2
我想删除从select语句返回的表的行。删除从哪里存在(选择...)删除所有行
这是一个简化的例子,它不工作。
declare @t1 table(a int, b int, c int)
insert into @t1(a,b,c) select 1, 10, 1
insert into @t1(a,b,c) select 1, 5, 2
select ta.a, ta.b, ta.c
from @t1 ta
join @t1 tb on ta.a = tb.a
where ta.c < tb.c
delete from @t1
where exists (select ta.a, ta.b, ta.c
from @t1 ta
join @t1 tb on ta.a = tb.a
where ta.c < tb.c)
select * from @t1
这里有输出,你可以看到选择只选择单一的行,但删除删除一切
你内心的选择查询没有以任何方式连接到删除查询。 – litelite
@litelite我只是用它来显示select中返回的行 – TagJones