0
╔═══════╦═══════════╦═══════╦══════╦═══════════════╗
║ EMPID ║   DATE    ║ TIME  ║ TYPE ║    STATUS     ║
╠═══════╬═══════════╬═══════╬══════╬═══════════════╣
║     5 ║ 2012-03-1 ║ 09:30 ║ in   ║ Ontime        ║
║     5 ║ 2012-03-1 ║ 14:00 ║ out  ║ Early Leaving ║
║     6 ║ 2012-03-1 ║ 09:30 ║ in   ║ Ontime        ║
║     6 ║ 2012-03-1 ║ 17:40 ║ out  ║ Ontime        ║
║     7 ║ 2012-03-1 ║ 10:30 ║ in   ║ LateComing    ║
║     7 ║ 2012-03-1 ║ 13:00 ║ out  ║ EarlyLeaving  ║
╚═══════╩═══════════╩═══════╩══════╩═══════════════╝

従業員のチェックインとチェックアウトのステータスが必要です。ステータス列の値を比較して結果を表示したい

select で case ステートメントを使用する例:

when Min(status)='Ontime' and max(status)='Ontime' then 'Present'

when Min(status)='Ontime' and max(status)='Early Leaving' then 'Left Early'

次のような最終出力が必要です。

╔═══════╦═══════════╦═══════╦══════╦═══════════════╦════════════╗
║ EMPID ║   DATE    ║ TIME  ║ TYPE ║    STATUS     ║ DAYSTATUS  ║
╠═══════╬═══════════╬═══════╬══════╬═══════════════╬════════════╣
║     5 ║ 2012-03-1 ║ 09:30 ║ in   ║ Ontime        ║            ║
║     5 ║ 2012-03-1 ║ 14:00 ║ out  ║ Early Leaving ║ Left Early ║
║     6 ║ 2012-03-1 ║ 09:30 ║ in   ║ Ontime        ║            ║
║     6 ║ 2012-03-1 ║ 17:40 ║ out  ║ Ontime        ║ present    ║
║     7 ║ 2012-03-1 ║ 10:30 ║ in   ║ LateComing    ║            ║
║     7 ║ 2012-03-1 ║ 13:00 ║ out  ║ EarlyLeaving  ║ Absent     ║
╚═══════╩═══════════╩═══════╩══════╩═══════════════╩════════════╝
4

3 に答える 3