部門コード、運用開始年月日、部門名 の項目をもつ『部門マスタ』というテーブルがあるとして
部門コード、運用開始年月日 の項目がキーだとして
組織変更のあった部門は新しくレコードが作成されて蓄積させる運用だったとして
→部門コード毎の最新の部門名を取得したい場合
—まずコード毎でグルーピングして「運用開始年月日」が一番大きいもの取得
SELECT 部門コード ,MAX(運用開始年月日) AS 年月日
FROM 部門マスタ
group by 部門コード
–上記のSELECT文をサブクエリ―として部門コードと一番大きい運用開始年月日を元のテーブルに紐づけ
SELECT AAA.部門コード,AAA.部門名
FROM 部門マスタ AS AAA INNER JOIN (
SELECT 部門コード ,MAX(運用開始年月日) AS 年月日
FROM 部門マスタ
group by 部門コード
) AS BBB
ON AAA.部門コード = BBB.部門コード
AND AAA.運用開始年月日 = BBB.年月日
Comments are closed.