mysqlでの更新です。
sql
1UPDATE `商品マスター` t1,
2(SELECT `商品ID`, `KAKAKU` FROM `最新価格` JOIN
3 (SELECT `商品ID`, MAX(`KAITEI_DATE`) `KAITEI_DATE` FROM `最新価格`) t2
4 USING (商品ID,`KAITEI_DATE`)
5) t3
6SET t1.`KAKAKU` = t3.`KAKAKU`
7WHERE t1.`商品ID` = t3.`商品ID`
8;
postgres
sql
1UPDATE 商品マスター t1 SET KAKAKU=t3.KAKAKU
2FROM (SELECT 商品ID, KAKAKU FROM 最新価格 JOIN
3 (SELECT 商品ID, MAX(KAITEI_DATE) KAITEI_DATE FROM 最新価格 GROUP BY 1) t2
4 USING (商品ID,KAITEI_DATE)
5) t3
6WHERE t1.商品ID=t3.商品ID;
Oracle
sql
1update 商品マスター t1
2 set KAKAKU = (
3 SELECT KAKAKU FROM 最新価格 t3 JOIN
4 (SELECT 商品ID, MAX(KAITEI_DATE) KAITEI_DATE FROM 最新価格 GROUP BY 商品ID ) t2
5 ON t2.商品ID=t3.商品ID and t2.KAITEI_DATE=t3.KAITEI_DATE and t3.商品ID = t1.商品ID)
6where exists
7 (SELECT 1 FROM 最新価格 t4 Where t4.商品ID = t1.商品ID)
8;
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/05 01:29