-2
我想獲得具有特定功能的行的百分比。對於我使用下面的查詢:CASE在COUNT裏面,返回0會被計數嗎?
select
count(distinct case when a.has_feature="Y" then p.id else 0 end)*100/count(distinct p.id)
FROM products p
JOIN a on a.id=p.id
WHERE 1
這個查詢被簡化,但我們的目標是讓在只有一個查詢這一比例,並在a.has_feature="Y"
測試不能在WHERE
條款,因爲我還需要的產品沒有這個功能。
我的問題是關於第一計數。 case when
將返回p.id
或0.是0計數還是應該使用null
或其他東西,以便當它沒有該功能時不計算?
只需嘗試一下!要回答你的問題,0會計數,NULL不會。 – fancyPants
在確定之前,我不會嘗試它,因爲它會運行幾個小時,但感謝解釋計數爲0和空 –
您不必運行此特定查詢。一個簡單的測試查詢可以做。 – fancyPants