Mysql SQL查询:复合

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

这里有一个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   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