coalesce 函數可以接受多個參數,將會返回這些參數中第一個非NULL的值,若提供的參數全部為NULL,則返回NULL
ifnull 函數和coalesce功能一樣,只是只可以接受兩個參數
if 函數接受三個參數,實現類似於三元判斷符(?:)的功能,即第一個參數不為NULL且不為0時,返回第二個參數,否則返回第三個參數
復制代碼 代碼如下:
SELECT a.*,coalesce(t.cous,0) as count FROM brand as a
left join (select brandid as bid,count(1) as cous from shopbrand group by brandid) t on a.brandid=t.bid
ORDER BY count DESC LIMIT 0,20
上述語法是做一個統計,本身會返回NULL,但是為空的話並不是一個好的做法,所以用coalesce來解決