• Hi Lynn Pettis,

    Following is the query I'm working on. The status field is summed up for '' in the query. But I need to have a separate column for each type of status. This query is already too large and I don't yet know how can I reduce the source code.

    [font="Courier New"]

    IF OBJECT_ID('DBO.Personnel','U') IS NOT NULL

    DROP TABLE Personnel

    IF OBJECT_ID('DBO.DYT','U') IS NOT NULL

    DROP TABLE DYT

    create table dbo.Personnel(

    EMP_CODE VARCHAR(5) PRIMARY KEY, -- Employee code

    EMP_DESC VARCHAR(50) -- Employee Name

    );

    create table dbo.DYT(

    DYTM_HONO VARCHAR(5), -- Employee code

    DYTM_DATE DATE,

    DYTM_HOURS NUMERIC(4,1),

    DYTM_STATUS CHAR(1),

    DYTM_SITE VARCHAR(3)

    );

    go

    insert into dbo.Personnel

    values ('00010','JOSEPH'),

    ('02535','PETER'),

    ('50500','MATHEW');

    insert into dbo.DYT

    values

    ('00010','2014-08-01',8,'N','ADQ'),

    ('00010','2014-08-02',8,'N','ADQ'),

    ('02535','2014-08-01',9,'N','ADQ'),

    ('02535','2014-08-02',8,'N','ADQ'),

    ('02535','2014-08-03',10,'N','ADQ'),

    ('50500','2014-08-01',0,'A','ADQ'),

    ('50500','2014-08-03',8,'N','ADQ'),

    ('00010','2014-08-04',8,'N','ADQ'),

    ('00010','2014-08-05',8,'N','ADQ'),

    ('00010','2014-08-06',8,'N','ADQ'),

    ('02535','2014-08-04',9,'N','ADQ'),

    ('02535','2014-08-05',8,'N','ADQ'),

    ('02535','2014-08-06',10,'N','ADQ'),

    ('50500','2014-08-04',8,'N','ADQ'),

    ('50500','2014-08-05',8,'N','ADQ'),

    ('50500','2014-08-06',8,'N','ADQ'),

    ('00010','2014-08-07',8,'N','ADQ'),

    ('00010','2014-08-08',8,'N','ADQ'),

    ('00010','2014-08-09',8,'N','ADQ'),

    ('02535','2014-08-07',9,'N','ADQ'),

    ('02535','2014-08-08',8,'N','ADQ'),

    ('02535','2014-08-09',12,'N','ADQ'),

    ('50500','2014-08-07',8,'N','ADQ'),

    ('50500','2014-08-08',8,'N','ADQ'),

    ('50500','2014-08-09',8,'N','ADQ'),

    ('00010','2014-08-10',8,'N','ADQ'),

    ('00010','2014-08-11',8,'N','ADQ'),

    ('00010','2014-08-12',8,'N','ADQ'),

    ('02535','2014-08-10',9,'N','ADQ'),

    ('02535','2014-08-11',8,'N','ADQ'),

    ('02535','2014-08-12',10,'N','ADQ'),

    ('50500','2014-08-10',8,'N','ADQ'),

    ('50500','2014-08-11',8,'N','ADQ'),

    ('50500','2014-08-12',8,'N','ADQ'),

    ('00010','2014-08-13',8,'N','ADQ'),

    ('00010','2014-08-14',8,'N','ADQ'),

    ('00010','2014-08-15',8,'N','ADQ'),

    ('02535','2014-08-13',9,'N','ADQ'),

    ('02535','2014-08-14',8,'N','ADQ'),

    ('02535','2014-08-15',12,'N','ADQ'),

    ('50500','2014-08-13',8,'N','ADQ'),

    ('50500','2014-08-14',8,'N','ADQ'),

    ('50500','2014-08-15',8,'N','ADQ'),

    ('00010','2014-08-16',8,'N','ADQ'),

    ('00010','2014-08-17',8,'N','ADQ'),

    ('00010','2014-08-18',8,'N','ADQ'),

    ('02535','2014-08-16',9,'N','ADQ'),

    ('02535','2014-08-17',8,'N','ADQ'),

    ('02535','2014-08-18',10,'N','ADQ'),

    ('50500','2014-08-16',8,'N','ADQ'),

    ('50500','2014-08-17',8,'N','ADQ'),

    ('50500','2014-08-18',8,'N','ADQ'),

    ('00010','2014-08-19',8,'N','ADQ'),

    ('00010','2014-08-20',8,'N','ADQ'),

    ('00010','2014-08-21',8,'N','ADQ'),

    ('02535','2014-08-19',9,'N','ADQ'),

    ('02535','2014-08-20',8,'N','ADQ'),

    ('02535','2014-08-21',12,'N','ADQ'),

    ('50500','2014-08-19',8,'N','ADQ'),

    ('50500','2014-08-20',8,'N','ADQ'),

    ('50500','2014-08-21',8,'N','ADQ'),

    ('00010','2014-08-22',8,'N','ADQ'),

    ('00010','2014-08-23',8,'N','ADQ'),

    ('00010','2014-08-24',8,'N','ADQ'),

    ('02535','2014-08-22',9,'N','ADQ'),

    ('02535','2014-08-23',8,'N','ADQ'),

    ('02535','2014-08-24',10,'N','ADQ'),

    ('50500','2014-08-22',8,'N','ADQ'),

    ('50500','2014-08-23',8,'N','ADQ'),

    ('50500','2014-08-24',8,'N','ADQ'),

    ('00010','2014-08-25',8,'N','ADQ'),

    ('00010','2014-08-26',8,'N','ADQ'),

    ('00010','2014-08-27',8,'N','ADQ'),

    ('02535','2014-08-25',9,'N','ADQ'),

    ('02535','2014-08-26',8,'N','ADQ'),

    ('02535','2014-08-27',12,'N','ADQ'),

    ('50500','2014-08-25',8,'N','ADQ'),

    ('50500','2014-08-26',8,'N','ADQ'),

    ('50500','2014-08-27',8,'N','ADQ'),

    ('00010','2014-08-28',8,'X','ADQ'),

    ('00010','2014-08-29',0,'P','ADQ'),

    ('00010','2014-08-30',8,'N','ADQ'),

    ('02535','2014-08-28',9,'N','ADQ'),

    ('02535','2014-08-29',0,'Z','ADQ'),

    ('02535','2014-08-30',12,'N','ADQ'),

    ('50500','2014-08-28',8,'N','ADQ'),

    ('50500','2014-08-29',8,'N','ADQ'),

    ('50500','2014-08-30',8,'S','ADQ');

    go

    select * from dbo.Personnel;

    select * from dbo.DYT;

    SELECT DISTINCT

    dbo.DYT.DYTM_HONO, dbo.Personnel.EMP_DESC, dbo.DYT.DYTM_SITE, UPPER(SUBSTRING(DATENAME(month, dbo.DYT.DYTM_DATE), 1, 3))

    + SUBSTRING(CONVERT(varchar(4), YEAR(dbo.DYT.DYTM_DATE)), 3, 2) AS Month,

    -- summing up daily hours per per day per calendar month

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [1]

    FROM dbo.DYT AS DYT1

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 1) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [1],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [2]

    FROM dbo.DYT AS DYT2

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 2) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [2],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [3]

    FROM dbo.DYT AS DYT3

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 3) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [3],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [4]

    FROM dbo.DYT AS DYT4

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 4) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [4],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [5]

    FROM dbo.DYT AS DYT5

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 5) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [5],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [6]

    FROM dbo.DYT AS DYT6

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 6) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [6],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [7]

    FROM dbo.DYT AS DYT7

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 7) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [7],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [8]

    FROM dbo.DYT AS DYT8

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 8) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [8],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [9]

    FROM dbo.DYT AS DYT9

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 9) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [9],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [10]

    FROM dbo.DYT AS DYT10

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 10) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [10],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [11]

    FROM dbo.DYT AS DYT11

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 11) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [11],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [12]

    FROM dbo.DYT AS DYT12

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 12) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [12],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [13]

    FROM dbo.DYT AS DYT13

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 13) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [13],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [14]

    FROM dbo.DYT AS DYT14

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 14) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [14],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [15]

    FROM dbo.DYT AS DYT15

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 15) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [15],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [16]

    FROM dbo.DYT AS DYT16

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 16) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [16],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [17]

    FROM dbo.DYT AS DYT17

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 17) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [17],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [18]

    FROM dbo.DYT AS DYT18

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 18) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [18],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [19]

    FROM dbo.DYT AS DYT19

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 19) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [19],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [20]

    FROM dbo.DYT AS DYT20

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 20) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [20],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [21]

    FROM dbo.DYT AS DYT21

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 21) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [21],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [22]

    FROM dbo.DYT AS DYT22

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 22) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [22],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [23]

    FROM dbo.DYT AS DYT23

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 23) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [23],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [24]

    FROM dbo.DYT AS DYT24

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 24) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [24],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [25]

    FROM dbo.DYT AS DYT25

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 25) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [25],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [26]

    FROM dbo.DYT AS DYT26

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 26) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [26],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [27]

    FROM dbo.DYT AS DYT27

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 27) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [27],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [28]

    FROM dbo.DYT AS DYT28

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 28) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [28],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [29]

    FROM dbo.DYT AS DYT29

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 29) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [29],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [30]

    FROM dbo.DYT AS DYT30

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 30) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [30],

    (SELECT ISNULL(SUM(DYTM_HOURS), 0) AS [31]

    FROM dbo.DYT AS DYT31

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 31) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS [31],

    -- summing up Absent, Sick, Non-approved Sick, Standby, Offshore-standby, Special Standby, Accident and Offshore-special standby days per calendar month

    (SELECT ISNULL(COUNT(DYTM_STATUS), 0) AS ABS

    FROM dbo.DYT AS DYTABS

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DATENAME(month, DYTM_DATE) = DATENAME(month, dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE)

    = YEAR(dbo.DYT.DYTM_DATE)) AND (DYTM_STATUS IN ('A', 'S', 'Z', 'P', 'T', 'X', 'L', 'C', 'J'))) AS ABS,

    -- parsing attendance status per day / per calendar month

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S1

    FROM dbo.DYT AS DYT1

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 1) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S1,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S2

    FROM dbo.DYT AS DYT2

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 2) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S2,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S3

    FROM dbo.DYT AS DYT3

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 3) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S3,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S4

    FROM dbo.DYT AS DYT4

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 4) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S4,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S5

    FROM dbo.DYT AS DYT5

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 5) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S5,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S6

    FROM dbo.DYT AS DYT6

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 6) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S6,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S7

    FROM dbo.DYT AS DYT7

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 7) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S7,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S8

    FROM dbo.DYT AS DYT8

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 8) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S8,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S9

    FROM dbo.DYT AS DYT9

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 9) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S9,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S10

    FROM dbo.DYT AS DYT10

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 10) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S10,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S11

    FROM dbo.DYT AS DYT11

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 11) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S11,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S12

    FROM dbo.DYT AS DYT12

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 12) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S12,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S13

    FROM dbo.DYT AS DYT13

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 13) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S13,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S14

    FROM dbo.DYT AS DYT14

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 14) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S14,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S15

    FROM dbo.DYT AS DYT15

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 15) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S15,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S16

    FROM dbo.DYT AS DYT16

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 16) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S16,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S17

    FROM dbo.DYT AS DYT17

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 17) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S17,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S18

    FROM dbo.DYT AS DYT18

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 18) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S18,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S19

    FROM dbo.DYT AS DYT19

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 19) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S19,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S20

    FROM dbo.DYT AS DYT20

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 20) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S20,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S21

    FROM dbo.DYT AS DYT21

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 21) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S21,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S22

    FROM dbo.DYT AS DYT22

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 22) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S22,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S23

    FROM dbo.DYT AS DYT23

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 23) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S23,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S24

    FROM dbo.DYT AS DYT24

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 24) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S24,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S25

    FROM dbo.DYT AS DYT25

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 25) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S25,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S26

    FROM dbo.DYT AS DYT26

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 26) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S26,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S27

    FROM dbo.DYT AS DYT27

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 27) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S27,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S28

    FROM dbo.DYT AS DYT28

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 28) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S28,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S29

    FROM dbo.DYT AS DYT29

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 29) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S29,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S30

    FROM dbo.DYT AS DYT30

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 30) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S30,

    (SELECT ISNULL(MAX(DYTM_STATUS), '') AS S31

    FROM dbo.DYT AS DYT31

    WHERE (DYTM_HONO = dbo.DYT.DYTM_HONO) AND (DAY(DYTM_DATE) = 31) AND (DATENAME(month, DYTM_DATE) = DATENAME(month,

    dbo.DYT.DYTM_DATE)) AND (YEAR(DYTM_DATE) = YEAR(dbo.DYT.DYTM_DATE))) AS S31

    FROM dbo.DYT INNER JOIN

    dbo.Personnel ON dbo.DYT.DYTM_HONO = dbo.Personnel.EMP_CODE

    GROUP BY dbo.DYT.DYTM_HONO, dbo.DYT.DYTM_DATE, dbo.Personnel.EMP_DESC,dbo.DYT.DYTM_SITE

    go

    drop table dbo.Personnel;

    drop table dbo.DYT;

    go

    [/font]

    Thanks and best regards.