I basically want to group the set by timeline in SQL, I am so out of ideas right now obviously group by does not work and so does row number.
Any ideas for SQL are really appreciated.
select shift_date,associate_id,name,description , min(START_TRAN_DATE) as startdate, max(end_tran_date) as end_date
from ltu_vt
group by shift_date,associate_id,name,description
**SHIFT_DATE ID NAME DESC START_TRAN_DATE END_TRAN_DATE**
2022-11-13 42 John Doe ADP 2022-11-13 06:31:00.000 2022-11-13 06:31:22.000
2022-11-13 42 John Doe LINE 2022-11-13 06:31:22.000 2022-11-13 06:50:13.000
2022-11-13 42 John Doe HJ 2022-11-13 06:50:13.000 2022-11-13 06:50:13.000
2022-11-13 42 John Doe HJ 2022-11-13 06:52:13.000 2022-11-13 06:52:13.000
2022-11-13 42 John Doe HJ 2022-11-13 06:52:20.000 2022-11-13 06:52:20.000
2022-11-13 42 John Doe HJ 2022-11-13 06:52:25.000 2022-11-13 06:52:25.000
2022-11-13 42 John Doe HJ 2022-11-13 06:52:46.000 2022-11-13 06:52:46.000
2022-11-13 42 John Doe BG 2022-11-13 06:53:58.000 2022-11-13 06:53:58.000
2022-11-13 42 John Doe BG 2022-11-13 06:54:01.000 2022-11-13 06:54:01.000
2022-11-13 42 John Doe HJ 2022-11-13 07:13:49.000 2022-11-13 07:13:49.000
2022-11-13 42 John Doe P2L 2022-11-13 07:14:09.000 2022-11-13 07:14:09.000
2022-11-13 42 John Doe P2L 2022-11-13 07:19:48.000 2022-11-13 07:19:48.000
2022-11-13 42 John Doe ADP 2022-11-13 07:20:00.000 2022-11-13 07:20:00.000
expected output is
**SHIFT_DATE ID NAME DESC START_TRAN_DATE END_TRAN_DATE**
2022-11-13 42 John Doe ADP 2022-11-13 06:31:00.000 2022-11-13 06:31:22.000
2022-11-13 42 John Doe LINE 2022-11-13 06:31:22.000 2022-11-13 06:50:13.000
2022-11-13 42 John Doe HJ 2022-11-13 06:50:13.000 2022-11-13 06:52:46.000
2022-11-13 42 John Doe BG 2022-11-13 06:53:58.000 2022-11-13 06:54:01.000
2022-11-13 42 John Doe HJ 2022-11-13 07:13:49.000 2022-11-13 07:13:49.000
2022-11-13 42 John Doe P2L 2022-11-13 07:14:09.000 2022-11-13 07:19:48.000
2022-11-13 42 John Doe ADP 2022-11-13 07:20:00.000 2022-11-13 07:20:00.000
2条答案
按热度按时间hs1rzwqc1#
从预期输出来看,您似乎希望按
description
分组,因此可以这样做:请注意,我唯一的信息是你给的信息,所以,如果我误解了问题,提供更多的信息,也许是SQL小提琴以及。
x6yk4ghg2#
Please try the following solution.
It is a well known "gaps and islands" problem.
SQL
Output