私のSQL Serverデータベースには2つのテーブルがあります。Microsoft SQL Server:組み合わせた値を使用して複数の行を更新し、別のテーブルの値と比較します。
表1は次のようになります。今、私はテーブルの列Number
に表2から列Number
の値を挿入する
Material Semifinished Number
-----------------------------------
Steel Flat 1x2 8991
Iron Round 100x200 1234
:
Material Semifinished Number
-----------------------------------
Steel Flat 1x2
Iron Round 100x200
は表2のようになります1.その基準は、列Material
と列Semifinished
の組み合わせである必要があります私もこの1試さ
update T1
set T1.NUMBER = T2.NUMBER
from TABLE1 AS T1
inner join TABLE2 AS T2 on T1.MATERIAL + T1.SEMIFINISHED = T2.MATERIAL + T2.SEMIFINISHED
where T1.MATERIAL + T1.SEMIFINISHED = T2.MATERIAL + T2.SEMIFINISHED
:あなたの助けを
ALTER TABLE TABLE1 ADD [NEWCOL] varchar(100)
ALTER TABLE TABLE2 ADD [NEWCOL] varchar(100)
update TABLE1
set NEWCOL = MATERIAL + SEMIFINISHED
update TABLE2
set NEWCOL = MATERIAL + SEMIFINISHED
update T1
set T1.NUMBER = T2.NUMBER
from TABLE1 AS T1
inner join TABLE2 AS T2 on T1.NEWCOL = T2.NEWCOL
where T1.NEWCOL = T2.NEWCOL
'インナーはT1.MATERIAL = T2.MATERIALとT1にT2としてTABLE2に参加。 SEMIFINISHED = T2.SEMIFINISHED' – GSerg
JOINと同じ条件でWHERE句を使用したのはなぜですか?それは何を考えていますか? –
そして問題は何ですか? – UnhandledExcepSean