我有一个这样的表,我正在使用mysql,仍然坚持在以前的记录中显示日期。
intDateId | dateLeave | dateCreated | intUpdateOrder
1 | 2018-04-01 | 2018-04-01 | NULL
2 | 2018-04-02 | 2018-04-01 | NULL
3 | 2018-04-11 | 2018-04-02 | 1
4 | 2018-04-20 | 2018-04-02 | 2
这是我到目前为止的查询,我仍然无法显示以前的日期:
SELECT
intDateId,
GROUP_CONCAT(dateLeave) AS datePrevious, // i'm stuck here
GROUP_CONCAT(dateLeave) AS dateCurrentUpdate,
intUpdateOrder
FROM leave_date
WHERE intUpdateOrder IS NOT NULL
GROUP BY intUpdateOrder
我想要的是这样的:
dateCreated | datePrevious | dateCurrentUpdate | intUpdateOrder
2018-04-02 | (2018-04-01, 2018-4-02) | (2018-04-11) | 1 // datePrevious WHERE intUpdateOrder NULL
2018-04-02 | (2018-04-11) | (2018-04-20) | 2 // datePrevious WHERE intUpdateOrder 1
谢谢您
1条答案
按热度按时间zqdjd7g91#
尝试以下查询
sql小提琴-http://www.sqlfiddle.com/#!9/006e88/17号