如何查询跨年度指定月份数据?例如获取2021-2023年3月数据
如何查询多个年份的指定月份数据
你当前的SQL代码只定义了要查询的字段,缺少过滤条件,而且输入年份时出现了笔误(把2023写成了20223),这才导致没得到预期结果。以下是正确的实现方式:
完整SQL示例(假设你的表名为your_table)
SELECT year, month AS month_nm, CASE WHEN UPPER(month) IN ('JAN','FEB','MAR') THEN 'Q1' WHEN UPPER(month) IN ('APR','MAY','JUN') THEN 'Q2' WHEN UPPER(month) IN ('JUL','AUG','SEP') THEN 'Q3' WHEN UPPER(month) IN ('OCT','NOV','DEC') THEN 'Q4' END AS quarter, scenario FROM your_table -- 替换成实际表名 WHERE -- 匹配2021-2023年,两种写法二选一即可 year BETWEEN 2021 AND 2023 -- 或者用IN:year IN (2021, 2022, 2023) AND UPPER(month) = 'MAR'; -- 匹配3月(对应英文缩写)
补充说明
- 如果你的
month字段存储的是数字(比如3代表3月),把最后一行过滤条件改成:AND month = 3; - 注意年份输入要准确,避免笔误(比如20223是错误的,应该是2023)。
内容的提问来源于stack exchange,提问作者Fastcard
相关产品推荐
相关产品推荐

