0

ここで問題が発生します。

表1:

CID, Name, HID
(001-233, Test1, 12345)

表 2:

CID, Name, HID, Primary
(001-233, Test1, 12345, '')

という定数値でTable2結合が存在する場所を更新したいTable1'Y'

したがって、ステートメントは次のとおりです。

UPDATE T2 SET T2.Primary = 'Y'
FROM T2 
INNER JOIN T1 
    ON (T1.CID = T2.CID 
        AND T1.HID = T2.HID)

このステートメントはすべての行を更新するだけです.1つのIDでのみ結合し、他のIDでは結合しないようなものですか? 私は最終的にあきらめてWHERE IN、2 つの ide フィールド CID+HID を連結することにより、単一の「id」でサブクエリを実行しました。しかし、適切な結合を使用してこれが機能しなかった理由を理解したいと思います。

Table1CTEです..

4

1 に答える 1

0
update t2 
set (t2.primary) = (select 'Y' from t1 where T1.CID = T2.CID AND T1.HID = T2.HID)
于 2012-04-11T17:13:13.087 に答える