①他テーブルを利用する基本の形は(SQLServerにて)
'--------------------------
UPDATE T_テストテーブル SET 区分 = 2
FROM T_参照テーブル AS B
where
T_テストテーブル.伝票No = B.伝票No AND B.区分 = 2
'--------------------------
②どうも確認する術がないので
WITH文を使って一度確認したいなら
'--------------------------
with B as (
SELECT B2.伝票No
FROM T_参照テーブル AS B1 LEFT JOIN T_テストテーブル AS B2 ON B1.伝票No = B2.伝票No
WHERE
B1.区分 = 2
)
'--------------------------
で、確認してから
'--------------------------
with B as (
SELECT B2.伝票No
FROM T_参照テーブル AS B1 LEFT JOIN T_テストテーブル AS B2 ON B1.伝票No = B2.伝票No
WHERE
B1.区分 = 2
)
UPDATE T_テストテーブル
SET (区分 = 2)
where T_テストテーブル.伝票No IN (SELECT * FROM B)
'--------------------------
というか、結局は
②をやるならEXIST文使えという話になるのでした。
②をやるならEXIST文使えという話になるのでした。
0 件のコメント:
コメントを投稿