0

データベースに問題があります

Select * from table where JobId='329188628'

結果:

ID     JobId      ONETID
-----------------------
32951  329188628    532
32951  329188628    532
32951  329188628    532
32951  329188628    532 

重複行を削除する必要があります。誰でも私を助けてもらえますか?

4

3 に答える 3

3

してみてください:

with c as(
select *, row_number() over(partition by id order by (select 0)) as n
from table where JobID='329188628'
)delete from c
where n > 1;
于 2012-09-18T12:19:49.680 に答える
3

これを試して。

with cte(cnt) as
(
  select row_number() over(partition by ID,JobId,ONETID order by getdate())
  from table where JobId='329188628'
)
delete from cte where cnt>1

グループ化には JobId と OnetId のみを使用します。

with cte(cnt) as
(
  select row_number() over(partition by JobId,ONETID order by getdate())
  from table where JobId='329188628'
)
delete from cte where cnt>1
于 2012-09-18T12:20:42.593 に答える
0

DISTINCTキーワードを使用します。

Select DISTINCT * from table where JobId='329188628'
于 2012-09-18T12:20:16.307 に答える