【【【关于 sql 语句的 if语句 谁能解释】】】

【【【关于 sql 语句的 if语句 谁能解释】】】
SELECT sum(if(gubun=1,member,0)) ,sum(if(gubun=1,price,0)) a,sum(member),sum(price) FROM donation
在以上语句里 if里面的是什么意思?
gubun,member,price 都是字段
知道的人 详细说明一下 谢谢
不知道你的数据库是什么库,如果是SQLSERVER或者ORACLE肯定是不对的。
但是既然你说肢租可以,那么可以分析一下这个IF语法。
if(gubun=1,member,0)
if里面第一个是条件,第二个参数是符合条件的时候取到值,第二个是不符合条件取值。
即如果gunbun等于1的时候,这个值是1,不符合就是0
举例gubun member
1 2
1 3
2 2
3 5
这樱敏样根历颂兆据你的查询,这个sum实际上等于2+3+0+0 = 5

0的作用就是,如果不符合gubun = 1的条件,就不加上这一行的值了,所以就加0.
咦 这是哪个数据库sql的写法?

一般这种要使盯旦扒耐用 case when 语句的

pgsql 没凯此扰有这种语法 ,我试了 不成功
。。。。sql 语法有错误,不可能通过的 你用的是什么数据库
← 上一篇: 下一篇: →