加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql sum求和怎么采用

发布时间:2023-04-08 14:21:29 所属栏目:MySql教程 来源:
导读:本篇内容主要讲解“mysql sum求和怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql sum求和怎么使用”吧!

mysql sum求和的方法
本篇内容主要讲解“mysql sum求和怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql sum求和怎么使用”吧!
 
mysql sum求和的方法:1、通过“select sum(value) as value from table where user_id”方式实现单一求和;2、通过嵌套语句多条件求和,语法如“(select sum(value) from table where type = 6 and type_son = 1) as xj0”。
 
一、单一的求和。
 
select sum(value) as value from table where user_id = 1 and type = 6 and type_son = 2
 
value 为求和的字段。
 
as 后面是 sum 求和后给它一个名称。
 
二、SQL语句中嵌套语句多条件求和。
 
select

(select sum(value) from table where type = 6 and type_son = 1) as xj0,

(select sum(value) from table where type = 6 and type_son = 2) as xj1,
 
(select sum(value) from table where type = 3 and type_son = 3) as xj2,
 
(select sum(value) from table where type = 4 and type_son = 3) as xj3
 
from table where user_id = 1 limit 0,1
 
as 后面是 sum 求和后给它一个名称,这样就不会冲突。
 
三、与第二个一样,但是不采取语句嵌套的方式求和,而是使用 sum 判断求和。
 
select

sum(IF(type = 6 and type_son = 1,value,NULL)) as xj0,

sum(IF(type = 6 and type_son = 2,value,NULL)) as xj1,
 
sum(IF(type = 3 and type_son = 0,value,NULL)) as xj2,
 
sum(IF(type = 4 and type_son = 3,value,NULL)) as xj3

from table where user_id = 1

sum(IF('条件判断','求和的字段','NULL不计算'))  as  '别名'
 
我觉得第三个的方式比前面两个的方式要好。
 
YII 2.0 使用 SUM 求和
 
$v['alls_bonus'] = AccountingLog::find()
 
        ->select(["
 
            sum( IF(type = 6 and type_son = 1,value,NULL) ) as xj0,
 
            sum( IF(type = 6 and type_son = 4,value,NULL) ) as xj1,
 
            sum( IF(type = 8 and type_son = 4,value,NULL) ) as xj2,
 
            sum( IF(type = 3 and type_son = 1,value,NULL) ) as xj3
 
        "])
 
        ->where(['user_id'=>1])
 
        ->asArray()
 
        ->one();
 
注意要在 select 里面加 ["sum........"],否则会报错
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!