如何从给定日期(不包括周末)创建日期范围为从日期到日期

时间:2019-03-31 19:31:18

标签: tsql

我有一张桌子PTO

DECLARE @PTO TABLE 
             (
                 employee_id VARCHAR(50), 
                 pto_type VARCHAR(10), 
                 date VARCHAR(20)
             )

INSERT INTO @PTO 
VALUES ('12XY34', 'VACATION', '4/04/2019'),
       ('12XY34', 'VACATION', '4/05/2019'),
       ('12XY34', 'VACATION', '4/08/2019'),
       ('98XX99', 'SICK', '4/04/2019'),
       ('98XX99', 'SICK', '4/05/2019'),
       (‘12XY34’, ‘VACATION’, ‘4/10/2019’),
       (‘12XY34’, ‘VACATION’, ‘4/11/2019’)

我想要如下结果:

employee_id  pto_type  from_date  to_date
--------------------------------------------
  12XY34     VACATION  4/04/2019  4/08/2019
  98XX99     SICK      4/04/2019  4/05/2019
  12XY34    VACATION  4/10/2019  4/11/2019

1 个答案:

答案 0 :(得分:0)

Select employee. Ptotype,  min(date) from, max(date) to
From PTO
Group by employee, ptotype

这就是您的要求,但是如果某人有多个假期该怎么办?数据仍然像这样吗?