标题:子查询返回的值不止一个
只看楼主
武定伟
Rank: 2
来 自:山西省晋中市
等 级:论坛游民
帖 子:13
专家分:30
注 册:2010-9-26
结帖率:75%
 问题点数:0 回复次数:4 
子查询返回的值不止一个
select 设备编号  from 设备设施信息  where 设备编号!=(select 设备编号 from 预警处理结果 where 处理结果='完成') and 使用到期年='2014' or 使用到期年<='2013')

子查询返回的值不止一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。

怎么解决?
搜索更多相关主题的帖子: 信息 2014 where 
2013-06-11 21:41
夏悠然
Rank: 1
等 级:新手上路
帖 子:3
专家分:3
注 册:2013-6-14
得分:0 
你的括号多了一半还是少了一半啊??括号没有成对出现
2013-06-14 22:54
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
得分:0 
select 设备编号  from 设备设施信息  
where 设备编号 not in
(select 设备编号 from 预警处理结果 where 处理结果='完成')
and 使用到期年='2014'
or 使用到期年<='2013'

♂ 死后定当长眠,生前何须久睡。♀
2013-06-17 11:21
chenpengfei1
Rank: 2
等 级:论坛游民
威 望:1
帖 子:15
专家分:64
注 册:2013-3-30
得分:0 
用not exist 也可以 只不过再查信息时必须以表为单位,not in则是可以以行为单位进行查询 但在意思上没有啥区别
select 设备编号  from 设备设施信息  
where 设备编号 not exist
(select* from设备设施信息 where (设备编号 from 预警处理结果 where 处理结果='完成'))
and 使用到期年='2014'
or 使用到期年<='2013'
2013-06-18 16:03
QJlin
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:3
帖 子:186
专家分:560
注 册:2013-5-18
得分:0 
用in做啊

慢慢前进走,不求一步登天,只求慢慢前进
2013-07-04 13:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-415000-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.660378 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved