gpt4 book ai didi

MySql 分组并包含 null

转载 作者:行者123 更新时间:2023-11-29 13:02:22 25 4
gpt4 key购买 nike

我有这两张表:

Table members
| id | name |
----------------
| 01 | John |
| 02 | Michael |
| 03 | Richard |

Table payments
| id | eur | name | date |
-------------------------------------
| 238 | 9.95 | John | 1323377751 |
| 233 | 9.95 | Michael | 1397864609 |
| 220 | 9.95 | Michael | 1397852739 |
| 215 | 9.95 | John | 1397852719 |
| 2 | 9.95 | Richard | 1323377751 | // This payment was made more than 24h ago

以下是我的查询:

select id, m.name, sum(eur) as total 
from mambers as m
left join payments as p
on m.name = p.name
where p.date >= unix_timestamp(current_timestamp - interval 24 hour)
group by m.name

返回结果是:

| John    | 19.90 |
| Michael | 19.90 |

但我还需要包括过去 24 天内没有付款的成员(member),如下所示:

| John    | 19.90 |
| Michael | 19.90 |
| Richard | 00.00 |

最佳答案

尝试查询时出现两个错误。

  1. 表名mambers不存在。

  2. 列名 id 不明确。

试试这个:

select m.id, m.name, IFNULL(sum(eur),'00.00') as total 
from members as m
left join payments as p
on m.name = p.name and p.date >= unix_timestamp(current_timestamp - interval 24 hour)
group by m.name

结果:

ID  NAME      TOTAL
1 John 10
2 Michael 20
3 Richard 00.00

查看结果 SQL Fiddle .

关于MySql 分组并包含 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23166821/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com