mysql查询以获取开始日期和结束日期之间的日期数据

anauzrmj  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(620)

我有一个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查询应该是什么?

bzzcjhmw

bzzcjhmw1#

你需要使用 GREATEST() 此任务的函数,

SELECT
    AMOUNT, 
    GREATEST( STARTDATE, ENDDATE ) as Date       
FROM
   table
ORDER BY
    Date

相关问题