我有一个MySQL表,其中包含'startDate','endDate'和'amount'来表示开始日期和结束日期之间所需的金额。
我希望获得一个月内所有日期的日期记录。
table:
---------------------------------------
ID | STARTDATE | ENDDATE | AMOUNT |
---------------------------------------
1 | 2018-01-02 | 2018-01-04 | 1000 |
2 | 2018-01-03 | 2018-01-06 | 2000 |
...| ... | ... | ... |
---------------------------------------
必填结果:
-------------------------
Date | Total Amount
-------------------------
2018-01-01 | 0
2018-01-02 | 1000
2018-01-03 | 3000
2018-01-04 | 3000
2018-01-05 | 2000
2018-01-06 | 2000
2018-01-07 | 0
... | ...
... | ...
2018-01-31 | 0
结果应生成当月的日期列表,其中包含相应的总金额。
SQL查询应该是什么?
答案 0 :(得分:-1)
您需要使用GREATEST()
功能执行此任务,
SELECT
AMOUNT,
GREATEST( STARTDATE, ENDDATE ) as Date
FROM
table
ORDER BY
Date