【发布时间】:2019-11-17 23:33:52
【问题描述】:
我有一张桌子:
表1
tran_id user_id start_date end_date
1 100 01-04-2018 02-04-2018
2 100 14-06-2018 14-06-2018
4 100 12-06-2018 12-06-2018
7 101 05-01-2018 05-01-2018
9 101 08-01-2018 08-01-2018
3 101 03-01-2018 03-01-2018
日期格式为DD-MM-YYYY
我需要找到由user_id 和start_date 排序的天差。求日差的公式是前一个记录的end_date和下一个记录的start_date相减。
这是预期的输出:
tran_id user_id start_date end_date day_diff
1 100 01-04-2018 02-04-2018 71
4 100 12-06-2018 12-06-2018 2
2 100 14-06-2018 14-06-2018 0
3 101 03-01-2018 03-01-2018 2
7 101 05-01-2018 05-01-2018 3
9 101 08-01-2018 08-01-2018 0
如何在 SQL 查询中得到这个?
【问题讨论】:
-
"日期格式是
DD-MM-YYYY" - 你的意思是列类型不是DATE吗?为什么? -
是日期。在我的意思的问题中,格式是 DD-MM-YYYY。