SQLの書き方について
以下の様なデータある場合
【Aテーブル】
-------------
NO,ITEM, KOSU
-------------
1 ,001 , 1
2 ,002 , 3
3 ,003 , 1
【Bテーブル】
-------------------
NO,NENDO,CODE,BIKO
-------------------
1,2006 , 1 , 1111
1,2007 , 0 , 1111
1,2007 , 2 , 1111
2,2007 , 0 , 2222
3,2007 , 0 , 3333
3,2007 , 1 , 3333
------------------------------
NO,NENDO,CODE,BIKO,ITEM,KOSU
------------------------------
1,2007 , 0 , 1111,001 , 1
2,2007 , 0 , 2222,002 , 3
3,2007 , 0 , 3333,003 , 1
と出力。(キーはNo)
NO毎のかつ年度の降順、コードの昇順で最新の1件を
取得するにはどのようなSQLを作成したらよいのでしょうか?
補足
UPDATE テーブル A SET NO = (SELECT RN FROM (SELECT コードA, コードB ,ROW_NUMBER() OVER (PARTITION BY コードA ORDER BY コードA, コードB) RN FROM テーブル ) B WHERE A.コードA = B.コードA AND A.コードB = B.コードB);