sql中“in” 和“=”问题

sql中“in” 和“=”问题

2013-05-06 16:40 loveyouzyh14  |  浏览 1175 次
SELECT SUM(Price)  from Table1 where ID in('58,4413,7471,7083,7085,7308,6979')
现在有个问题,In括号里的条件都要一致,如果其中一个不满足.就不查询,用In是不行的,要使用什么才能全部满足?
专业回答
 团队    tianmayuchuan
2013-05-06 17:01
不是的。in是只要有满足条件的就能查询出来。=是必须全满足。

SELECT SUM(Price) from Table1 where ID in('58,4413,7471,7083,7085,7308,6979')
相当于 
SELECT SUM(Price) from Table1 where ID ='58' or id='4413' or id='7471' or id ='7083' or id='7085' or id ='7308' or id='6979')

为您推荐:

2013-05-06 16:51 xvwuoo  | 五级
这个查询是对你想要的意思,如果没有满足条件的话,证明记录里没有这个条,所以其它的查询也查不出来,
评论  |  1  0
2013-05-06 16:42 ykj_fj  | 十四级
这种情况,应该是用 and
评论(1)  |  1  0
2013-05-06 16:56 echooff1987  | 四级
加上一个行数判断吧
评论  |  0  0
2013-05-06 16:42 情又独中  | 八级  最快回答
你的每一行的ID只能有一个值,怎么可能全部满足?
追问:

我这个ID值不是唯一的,

相当于的FeeID,这里面是一组的,,其中一个FeeID不满足,都不去计算总和

追答:
那你只有用and了
where feelid=58 and ........... and feelid=6979
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值