【发布时间】:2022-01-02 02:09:20
【问题描述】:
我尝试创建一个 SQL 语句,它选择当前年份的所有月份以及天数。
我不知道从哪里开始。
我明白了:
SELECT to_char(date, 'YYYY-MM-DD') AS YearMonth
FROM date_table
WHERE YearMonth LIKE ('2021%')
但是,我得到了输出
YearMonth
2
7
3
9
11
如何让它看起来像这样:
02
07
03
09
11
我如何知道月份有多少天?
【问题讨论】:
-
事先知道查询答案的唯一真正障碍是闰年。在闰年,二月有 29 天,否则有 28 天。所以,如果你能跟踪闰年,你就知道每个月有多少天。
-
对于前导零,可以使用LPAD
-
在同一个文档中,您可以找到td_month_end,例如
SELECT TD_MONTH_END(DATE'2012-01-15',NULL);,它返回12/01/31