1

SQL サーバーに次の行と列 (A コード、説明、長さ、および B コード) を持つテーブルがあります。

A コード 説明 長さ B コード

A100 農村-3D 25 A100

A100 NULL 55 B100

** 最初の行で A コード = B コード

** 2 番目の A-code<> B-Code で、Desc は NULL です

私がしたいことは、A-Code = B-Code である最初の行の Desc 値で 2 番目の行 (A-code<> B-Code) の Desc 列を更新することです。

私の最終的なテーブルの結果は次のようになります

A コード 説明 長さ B コード

A100 農村-3D 25 A100

A100 農村-3D 55 B100

助けてください 。

ありがとう

4

1 に答える 1

4
UPDATE a
SET a.[Desc] = b.[Desc]
FROM MyTable A
INNER JOIN MyTable B on a.[A-Code] = b.[A-Code] and b.[A-Code] = b.[B-Code]
WHERE a.[A-Code] <> a.[B-Code]
And a.[Desc] IS NULL;

SqlFiddle

于 2013-02-04T22:29:23.307 に答える