delete和exists一起用的问题,求达人!

geniuswjt 2011-03-05 01:15:15
select * from zjolsms_ig..tb_smsdeliver c where exists
(select p_number from zjolsms_ig..tb_programinfo a,zjolsms_ig..tb_userinfo b
where a.c_id=b.u_relationid and b.u_loginname='czgd105' and b.u_level=2 and a.p_number=c.p_number)

delete from zjolsms_ig..tb_smsdeliver c where exists
(select p_number from zjolsms_ig..tb_programinfo a,zjolsms_ig..tb_userinfo b
where a.p_number=c.p_number and a.c_id=b.u_relationid and b.u_loginname='bbgd104' and b.u_level=2)


如上,我查询语句可以执行,但是删除语句执行不了,WHY?
报错内容:
消息 102,级别 15,状态 1,第 1 行
'c' 附近有语法错误。

即delete那行的c附近有错误,我咋看也没看出错误啊?!求达人!
...全文
1672 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
darlingshen 2013-09-02
  • 打赏
  • 举报
回复
楼主确实是个二货 1楼的标准答案, 你都不去试试看, 查查资料 ‘delete 别名 from’ 查都不查就否认了 还我自己发现了, 你自己发现个屁, 自己发现也就那水平, 高手写的代码一般你都看不懂, 所以少发表意见, 多查资料!
neddy_0422 2013-09-02
  • 打赏
  • 举报
回复
一楼最先给答案,不给人家加分
编译者 2012-08-22
  • 打赏
  • 举报
回复
1楼正解啊,实践是检验真理的唯一标准啊。
chuanzhang5687 2011-11-13
  • 打赏
  • 举报
回复
敢问小姐芳名[Quote=引用 16 楼 linares 的回复:]

笑,对于2L当时本小姐懒得解释,小小问题折腾到凌晨5点,自以为是的结果。

今天回来看一下,笑多几声。
[/Quote]
lflljt 2011-11-10
  • 打赏
  • 举报
回复
今天回来看一下,笑多几声。
gw6328 2011-03-05
  • 打赏
  • 举报
回复
楼主试一下1楼的不就行了。
快溜 2011-03-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 geniuswjt 的回复:]
引用 1 楼 linares 的回复:
delete c from zjolsms_ig..tb_smsdeliver c where exists
(select p_number from zjolsms_ig..tb_programinfo a,zjolsms_ig..tb_userinfo b
where a.p_number=c.p_number and a.c_id=b.u_re……
[/Quote]

ljking0731 2011-03-05
  • 打赏
  • 举报
回复

--这样就可以了
delete from zjolsms_ig..tb_smsdeliver where exists
(select p_number from zjolsms_ig..tb_programinfo a,zjolsms_ig..tb_userinfo b
where a.p_number=zjolsms_ig..tb_smsdeliver.p_number and a.c_id=b.u_relationid and b.u_loginname='bbgd104' and b.u_level=2)

中国风 2011-03-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 geniuswjt 的回复:]

引用 1 楼 linares 的回复:
delete c from zjolsms_ig..tb_smsdeliver c where exists
(select p_number from zjolsms_ig..tb_programinfo a,zjolsms_ig..tb_userinfo b
where a.p_number=c.p_number and a.c_id=b.u_r……
[/Quote]

1樓是對的,加C別名,這是鏈接服務器有4部分。別名C=zjolsms_ig..tb_smsdeliver
Billy 2011-03-05
  • 打赏
  • 举报
回复
delete zjolsms_ig..tb_smsdeliver from zjolsms_ig..tb_smsdeliver c ...
AcHerat 元老 2011-03-05
  • 打赏
  • 举报
回复

delete c
from zjolsms_ig..tb_smsdeliver c
where exists
(select p_number from zjolsms_ig..tb_programinfo a,zjolsms_ig..tb_userinfo b
where a.p_number=c.p_number and a.c_id=b.u_relationid and b.u_loginname='bbgd104' and b.u_level=2)
So_CooL 2011-03-05
  • 打赏
  • 举报
回复

declare @tb table(id int)
insert into @tb
select 1
delete from @tb c where c.id = 1

So_CooL 2011-03-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 geniuswjt 的回复:]
我自己发现了,好像delete里数据表不能用别名。。。
[/Quote]

我也有这样的感觉 哈哈
geniuswjt 2011-03-05
  • 打赏
  • 举报
回复
不过按道理说不应该啊。但我SQL 2005确实遇到了这个问题,没用别名就不出错。
一用别名就一直报错,有达人指教下吗
geniuswjt 2011-03-05
  • 打赏
  • 举报
回复
我自己发现了,好像delete里数据表不能用别名。。。
geniuswjt 2011-03-05
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xmpilot 的回复:]

=========================^_^==========================
[/Quote]
没人知道吗?
Hankuker 2011-03-05
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 linares 的回复:]
笑,对于2L当时本小姐懒得解释,小小问题折腾到凌晨5点,自以为是的结果。

今天回来看一下,笑多几声。
[/Quote]
膜拜...
longyi007 2011-03-05
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 linares 的回复:]
笑,对于2L当时本小姐懒得解释,小小问题折腾到凌晨5点,自以为是的结果。

今天回来看一下,笑多几声。
[/Quote]
MM好
Linares 2011-03-05
  • 打赏
  • 举报
回复
笑,对于2L当时本小姐懒得解释,小小问题折腾到凌晨5点,自以为是的结果。

今天回来看一下,笑多几声。
--小F-- 2011-03-05
  • 打赏
  • 举报
回复
有别名的话就加别名 没有的话就不需要加

zjolsms_ig..tb_smsdeliver 有个别名是 c
加载更多回复(2)

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧