- 166 名前:デフォルトの名無しさん mailto:sage [2010/01/04(月) 17:10:15 ]
- pc11.2ch.net/test/read.cgi/db/1252492296/377
# # Aテーブル # aaa|ddd # # Bテーブル # aaa|bbb # # Cテーブル # bbb|ccc # # Aテーブルに対して、カラムaaaでBテーブルが紐づき、 # Bテーブルに対して、カラムbbbでCテーブルが紐づくとします。 # (つまり、Aテーブルのレコード1件は、Bテーブルを経由してCテーブルのレコード1件と紐づく) # ここで、A.ddd = 'X'のとき、C.ccc = 'Y'に更新したいのですが # 下記の文であってますでしょうか? # また、もっと効率のいい方法はありますでしょうか? # # update C set C.ccc = 'Y' where C.bbb in # ( select B.bbb from B where B.aaa in # ( select A.aaa from A where A.ddd = 'X') # ( select A.aaa from A where A.ddd = 'X') # )
|

|