34,593
社区成员
发帖
与我相关
我的任务
分享
update [Table]
set field2 in (select field2 from [Table] a where field1 <>[Table].field1 and field1 in(1,2))
where field1 in (1,2)
update tb
set field2=(select field2 from tb where id=case tb.id when @id1 then @id2 else @id1 end)
where id=@id1 or id=@id2
declare @id1 int,@id2 int --要交换的两条记录的主键
set @id1=1
set @id2=2
update tb
set field2=(select field2 from tb where id=case a.id when @id1 then @id2 else @id1 end)
from tb a
where id=@id1 or id=@id2
update [Table] set field2=(select field2 from [Table] a where field1<>[Table].field1 and field1 in(1,2))
where field1 in (1,2)
update tb set field1=99999 where field1=1
update tb set field1=1 where field1=2
update tb set field1=2 where field1=99999
--两笔记录就这样
UPDATE T
SET Field2=b.Field2
FROM T a ,T b
WHERE a.Field1<>b.Field1
SELECT * FROM T ORDER BY Field1 DESC