sqlserver 表 无法更新和删除 子查询返回的值不止一个
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver 表 无法更新和删除 子查询返回的值不止一个相关的知识,希望对你有一定的参考价值。
这是语句
delete from khppzd
where KHPPZD_XTDWBH is null
and KHPPZD_KHMC not like '%非协议%'
and KHPPZD_JS in('1','2')
这是错误提示
消息 512,级别 16,状态 1,过程 khppzd_update,第 19 行
子查询返回的值不止一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。
语句已终止。
无法删除和更新,select正常,请大神指点
这个delete语句和错误提示的khppzd_update有啥关系?又没有子查询...
应该是其它地方的问题,再检查一下“过程 khppzd_update,第 19 行子查询返回的值不止一个”
祝你成功!
sqlserver根据子查询更新语句
语法结构:
update 主表别名 set 主表别名.name=(select 子表别名.name from 子表 子表别名 where 主表别名.id=子表别名.id) from 主表 主表别名
例:
update t set t.name=(select b.name from users b where t.userid=b.userid) from teacher t
以上是关于sqlserver 表 无法更新和删除 子查询返回的值不止一个的主要内容,如果未能解决你的问题,请参考以下文章