2012年9月12日水曜日

UPDATEでSELECT文

Microsoft SQL Server で、SELECT文の結果で、UPDATEをかけたい場合

UPDATEでSELECT文を書きたい場合、方法はいくつかあるが自分が便利だと思うものを。


例)テーブルB で、テーブルAの列を更新したい場合
UPDATE テーブルA
SET 列1 = B.列2
FROM テーブルA A
 INNER JOIN テーブルB B ON A.キー1 = B.キー1
WHERE A.列 = [更新対象の条件]

この構文の便利なところは、SELECT文のSQLの結果を事前に確認できるところ。

上記のSQLのFROM句以下はそのままで、
SELECT *
FROM テーブルA A
 INNER JOIN テーブルB B ON A.キー1 = B.キー1
WHERE A.列 = [更新対象の条件]

とすると、更新対象のレコードと、更新する値を事前に確認できる。

これで全レコード書き換えちゃったみたいなミスもなくなりますね。

2012年9月5日水曜日

はじまり

SEをやっていると色々なトラブルに巻き込まれたり、顧客の無茶な要望にさらされたりします。

そんな時の情報収集に、Webはかかせません。

いつもお世話になっているのでたまには自分も人の役に立てればと思い、
せめて遭遇したトラブルの解決法でも乗せてみようかと思います。