亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MySQL SUM()帶條件的求和方法與多條件的求和方法解讀

 更新時間:2023年05月29日 09:43:24   作者:小洪帽i  
這篇文章主要介紹了MySQL SUM()帶條件的求和方法與多條件的求和方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

SUM()帶條件的求和方法與多條件的求和方法

單一的求和

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........"],否則會報錯

MySQL小知識:SUM函數(shù)根據(jù)條件求和

普通求和

select sum(is_img) ?is_img_sum from ec_assessment

根據(jù)條件求和

select sum(if(is_img=1,1,0)) asis_img_sum from ec_assessment

白話注釋:sum(如果is_img=1,那么就+1,否則就+0)

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。 

相關文章

最新評論