-2

SQL Server に次のようなテーブルがあります。

code description percentage
123  abc         1
123  oke         0
123  cfd         0
234  kde         2
234  kfc         0
234  kfc         0

すべての「0 パーセンテージ」レコードの説明を、各コード グループの非ゼロ パーセンテージ レコードに更新するにはどうすればよいですか? たとえば、私が求めている結果は次のとおりです。

code description percentage
123  abc         1
123  abc         0
123  abc         0
234  kde         2
234  kde         0
234  kde         0
4

2 に答える 2

2
Update T1 set description = T2.Description from YourTable T1 
inner join 
(    select code, description from yourTable group by code, description
    where percentage <> 0 ) T2 on T1.Code = T2.Code
where T1.Code = 0

編集済み これは、各グループの説明が互いにゼロであると見なします。

于 2012-08-20T02:50:43.983 に答える
1

試す

UPDATE Table  
SET description=(SELECT TOP 1 description 
                 FROM Table t
                 WHERE t.code = Table.code AND percentage<>'0') 
WHERE percentage='0'
于 2012-08-20T02:42:01.810 に答える