gpt4 book ai didi

mysql - MySQL 中的 generate_series() 等价物

转载 作者:行者123 更新时间:2023-11-29 14:00:48 32 4
gpt4 key购买 nike

我需要查询并加入一年中的所有日子,但在我的数据库中没有日历表。
谷歌搜索后,我在 PostgreSQL 中找到了 generate_series()。 MySQL有类似的东西吗?

我的实际表是这样的:

date     qty
1-1-11 3
1-1-11 4
4-1-11 2
6-1-11 5

但是我的查询必须返回:

1-1-11    7
2-1-11 0
3-1-11 0
4-1-11 2
and so on ..

最佳答案

我就是这样做的。它创建从 2011-01-012011-12-31 的日期范围:

select 
date_format(
adddate('2011-1-1', @num:=@num+1),
'%Y-%m-%d'
) date
from
any_table,
(select @num:=-1) num
limit
365

-- use limit 366 for leap years if you're putting this in production

唯一的要求是any_table 中的行数应该大于或等于所需范围的大小(在本例中>= 365 行)。您很可能会将其用作整个查询的子查询,因此在您的情况下,any_table 可以是您在该查询中使用的表之一。

关于mysql - MySQL 中的 generate_series() 等价物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19253052/

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