SQL:计算值的出现次数

时间:2016-04-28 10:25:36

标签: sql count group-by

$user_id = 66;
'visible'=>'(($data->message_kind==="ASKED") && 
              (Yii::app()->user>getState("userId")===$user_id))?true:false;'));

尝试合并user | fruit ------------ 1 | apple 1 | apple 1 | apple 2 | apple 2 | apple 1 | pear count以获取

group by

有关如何进行的任何提示都表示赞赏。

2 个答案:

答案 0 :(得分:6)

使用case表达式进行条件计数:

select user,
       count(case when fruit = 'apple' then 1 end) as apples,
       count(case when fruit = 'pear' then 1 end) as pears
from tablename
group by user

答案 1 :(得分:1)

如果您正在使用Oracle,则可以使用PIVOT功能:

XPath.setNamespaceContext()

PIVOT / UNPIVOT上的更多详细信息和完整样本将在网上找到(f.e。here https://oracle-base.com/articles/11g/pivot-and-unpivot-operators-11gr1