【发布时间】:2019-02-12 13:42:28
【问题描述】:
我有一张这样的桌子:
+----+---------+------------+
| id | price | date |
+----+---------+------------+
| 1 | 340 | 2018-09-02 |
| 2 | 325 | 2018-09-05 |
| 3 | 358 | 2018-09-08 |
+----+---------+------------+
我需要制作一个每天都有一行的视图。像这样的:
+----+---------+------------+
| id | price | date |
+----+---------+------------+
| 1 | 340 | 2018-09-02 |
| 1 | 340 | 2018-09-03 |
| 1 | 340 | 2018-09-04 |
| 2 | 325 | 2018-09-05 |
| 2 | 325 | 2018-09-06 |
| 2 | 325 | 2018-09-07 |
| 3 | 358 | 2018-09-08 |
+----+---------+------------+
我可以使用带有循环的 PHP (foreach) 并创建一个临时变量来保存以前的价格,直到有新的日期。
但我需要创建一个视图......所以我应该使用纯 SQL 来做......知道我该怎么做吗?
【问题讨论】:
-
你用的是哪个版本的mysql?
-
我用
mariadb 10.2.14@trincot -
等等,为什么预期结果中的 id 与源数据不同?它是否需要是基于吨日期顺序的行号?
-
@RaymondNijland 好吧,我不关心 ids .. 最好不要重复。
-
创建一个包含所有感兴趣日期的日历表或 cte。外连接。