mysql中sum使用條件統計

2021-10-13 20:56:04 字數 583 閱讀 3467

sum(if(表示式,表示式為true的數量,表示式false的數量))

實際使用

場景:一張表test,擁有租戶欄位a,年齡欄位b,擁有紙巾數量c

現在需要統計租戶下的所有水杯數量和年齡大於30歲的資料。

正常可以使用子查詢實現:

select

t2.a,

sum(t2.c),

( select

sum(1)

from

test t1

where

t1.a = t2.a

and t1.b >= 30

) bfrom

test t2

group by

t2.a

使用sum if判斷就可以不寫子查詢了

select

a, sum(if(b >= 30, 1, 0)) as b,

sum(c)

from

test

group by

a

Mysql中使用count加條件統計

mysql中count 函式的一般用法是統計欄位非空的記錄數,所以可以利用這個特點來進行條件統計,注意這裡如果欄位是null就不會統計,但是false是會被統計到的,記住這一點,我們接下來看看幾種常見的條件統計寫法。測試環境 windows 10 welcome to the mysql monit...

MySQL中count 的條件統計方式

前幾天做筆試題時遇到乙個問題,如下 乙個info表內容如下 date result 2019 10 12 high 2019 10 12 low2019 10 12 high 2019 10 16 low2019 10 16 low2019 10 16 high 請寫出相應的sql語句,以得出以下的...

mysql中BIT COUNT的統計使用

mysql 中bit count 的統計使用 根據天計算訪問量 下面的例子顯示了如何使用位組函式來計算每個月中使用者訪問網頁的天數。create table t1 year year 4 month int 2 unsigned zerofill,day int 2 unsigned zerofil...