Mysql SQL查询:复合
这里有一个MySQL的查询。这个查询在前端很容易解决,但在MySQL中需要一个机制。 如何计算1列中的2个不同项目?? 如: 我有这张桌子:Mysql SQL查询:复合,mysql,Mysql,这里有一个MySQL的查询。这个查询在前端很容易解决,但在MySQL中需要一个机制。 如何计算1列中的2个不同项目?? 如: 我有这张桌子: NAME FRUIT A APPLE A APPLE A ORANGE A APPLE A ORANGE B APPLE B ORANGE B ORANGE B ORANGE 所需o/p: NAME No._of_apples No._of_oranges A 3 2 B
NAME FRUIT
A APPLE
A APPLE
A ORANGE
A APPLE
A ORANGE
B APPLE
B ORANGE
B ORANGE
B ORANGE
所需o/p:
NAME No._of_apples No._of_oranges
A 3 2
B 1 3
是否有人可以澄清我试图获取此O/p的代码:
select distinct msisdn, count(fruit) no._of_apples, count(fruit) no._of_oranges
from table,
where true
group by 1
order by 1
试一试
试一试
表的列又是什么?表的列又是什么?
SELECT NAME,
SUM(IF(FRUIT = 'APPLE', 1, 0)) AS no_of_apples,
SUM(IF(FRUIT = 'ORANGE', 1, 0)) AS no_of_oranges
FROM table
GROUP BY NAME
ORDER BY NAME