Microsoft Access 掲示板

キーブレイク処理(クエリにて) / 19

23 コメント
views
4 フォロー
19
mayu 2024/06/19 (水) 19:06:32 修正 fc5d2@6c788 >> 14

(続き)

■DML

SELECT x.氏名
     , x.組織名
     , Min( x.発令日 ) As 発令日
     , Max( Nz( DateAdd( 'd', -1, y.発令日 ), #12/31/2099# ) ) As 失効日
FROM アクションテーブル x
LEFT JOIN  アクションテーブル y
       ON x.氏名 = y.氏名
      AND x.GSeq日付 = y.GSeq日付 - 1
GROUP BY x.氏名
       , x.組織名
       , x.GSeq日付 - x.GSeq組織
ORDER BY x.氏名
       , Min( x.発令日 )
;

 
■結果

氏名組織名発令日失効日
山田 花子営業2022/01/012023/03/31
山田 花子経営企画2023/04/012023/08/31
山田 花子営業2023/09/012024/03/31
山田 花子総務2024/04/012099/12/31
青山 太郎人事2014/04/012015/03/31
青山 太郎経営企画2015/04/012017/09/30
青山 太郎法務2017/10/012021/03/31
青山 太郎人事2021/04/012022/03/31
青山 太郎総務2022/04/012099/12/31
通報 ...