2014年4月10日木曜日

[SQL]他テーブルを利用して更新するSQL文その3

苦手な他テーブルを使ったUPDATE文その3。続きもの。


で、3にて最終形態。観念してEXIST文を使う。

----------------------------------
①EXISTにて他テーブルでの存在をチェックしつつ
②更新内容には他テーブル(まぁ一緒なんだけど)の内容を利用するSQL文。
----------------------------------


UPDATE テーブル1
SET
 項目1 = B1.項目1,
 項目2= B1.項目2,
FROM
 テーブル2 AS B1
WHERE
  テーブル1.主キー = 1 and B1.主キー = 0
 AND
 EXISTS
 ( SELECT * FROM  テーブル2 AS B2 WHERE テーブル1.主キー = B2.主キー  )



↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
①の存在チェックはB2にてしつつ、
②の内容をとってくるのはB1にてしているという概要。
元をただせばB1もB2も同じテーブルなんだけど。

0 件のコメント:

コメントを投稿