Mysql怎么查询一个字段同一内容时,另一字段各内容出现的次数


字段A 字段B
1 2
1 3
1 3
2 4
3 1
3 1
统计结果是:
字段A 字段B=1 字段B=2 字段B=3 字段B=4
1 NULL 1 2 NULL

2 NULL NULL NULL 1
3 2 NULL NULL NULL
如果能将第一列的显示成字段A的值出现次数就更好了,如:
字段A 字段B=1 字段B=2 字段B=3 字段B=4
1(2) NULL 1 2 NULL

1(1) NULL NULL NULL 1
2(2) 2 NULL NULL NULL

小白求教。谢谢各位大佬

select B from 表名 where A=1;


 select A , B , count(*) from 表明  group by A,B

对,count就可以

我记得是用group by 吧

 SELECT
    A AS 字段A,
    SUM( CASE WHEN B=1 THEN 1 ELSE 0 END) AS 字段B1,
    SUM( CASE WHEN B=2 THEN 1 ELSE 0 END) AS 字段B2,
    SUM( CASE WHEN B=3 THEN 1 ELSE 0 END) AS 字段B3,
    SUM( CASE WHEN B=4 THEN 1 ELSE 0 END) AS 字段B4,
FROM TABLE_T
GROUP BY A

select s.b, count(*) c from table as s group by s.b