【发布时间】:2020-11-02 13:41:15
【问题描述】:
我有类似的桌子:
| id | date | user_id | value |
---------------------------------------------
| 1 | 2019-01-10 | 3 | 20
| 2 | 2019-04-08 | 3 | 30
| 3 | 2019-06-04 | 3 | 40
| 4 | 2019-08-20 | 3 | 50
| 5 | 2019-11-19 | 3 | 60
| 6 | 2019-01-11 | 4 | 70
| 7 | 2019-02-20 | 4 | 11
| 8 | 2019-03-11 | 4 | 12
| 9 | 2019-07-12 | 4 | 23
--------------------------------
我想获取两个日期之间的值:date_from 和 date_to。以及从这个间隔开始的所有月份。
例如:
date_from = 2019-01-08; date_to = 2019-09-10;
所以对于 user_id = 3 我想得到类似的东西:
| date | value
-------------------------
| 2019-01 | 20 |
| 2019-02 | NULL |
| 2019-03 | NULL |
| 2019-04 | 30 |
| 2019-05 | NULL |
| 2019-06 | 40 |
| 2019-07 | NULL |
| 2019-08 | 50 |
| 2019-09 | NULL |
--------------------------
有人帮助我吗?谢谢!
【问题讨论】:
-
您的结果是按月计算的,但您的时间段是按天计算的,这似乎很奇怪。
-
一个用户一个月内可以有多个条目吗?如果是,是否要添加该值?
-
@Turo 不,它不能。
-
@GordonLinoff 它只是因为我需要它来制作图表,所以我只需要没有日期的年份和月份。
-
考虑处理应用代码中数据显示的问题(例如缺失值)