如何在postgresql中获取每月的列表日数据
我使用psqlv.10.5 我有这样一个结构表:如何在postgresql中获取每月的列表日数据,postgresql,Postgresql,我使用psqlv.10.5 我有这样一个结构表: | date | total | ------------------------- | 01-01-2018 | 50 | | 05-01-2018 | 90 | | 30-01-2018 | 20 | | date | total | ------------------------- | 01-01-2018 | 50 | | 02-01-2018
| date | total |
-------------------------
| 01-01-2018 | 50 |
| 05-01-2018 | 90 |
| 30-01-2018 | 20 |
| date | total |
-------------------------
| 01-01-2018 | 50 |
| 02-01-2018 | 0 |
| 03-01-2018 | 0 |
| 04-01-2018 | 0 |
| 05-01-2018 | 90 |
.....
| 29-01-2018 | 0 |
| 30-01-2018 | 20 |
如何按月获取回顾数据,但数据显示为连续30天,我希望数据显示如下:
| date | total |
-------------------------
| 01-01-2018 | 50 |
| 05-01-2018 | 90 |
| 30-01-2018 | 20 |
| date | total |
-------------------------
| 01-01-2018 | 50 |
| 02-01-2018 | 0 |
| 03-01-2018 | 0 |
| 04-01-2018 | 0 |
| 05-01-2018 | 90 |
.....
| 29-01-2018 | 0 |
| 30-01-2018 | 20 |
我尝试了以下查询:
SELECT * FROM date
WHERE EXTRACT(month FROM "date") = 1 // dynamically
AND EXTRACT(year FROM "date") = 2018 // dynamically
但结果并不是我所期望的。还有我动态创建的月份和日期的参数
如有任何帮助,请使用该功能,例如:
使用
generate_series
示例:要添加到上述答案+1中,这是一个使用日历表的示例,其中包含您希望显示在报告中的所有日期,即使所有日期没有显示在您的实际数据中。