我有一张表格
SID LinkName
A1 Link1
A1 Link2
A2 Link1
A2 Link2
A2 Link3
A3 Link2
A1 Link1
A2 Link2
我需要以下面的格式显示每个链接类型的计数结果
Link1 Link2 Link3
3 4 1
请告知。
编辑:
如果我需要以下面的格式显示每个链接类型的不同计数的结果。像A1->Link1出现两次,但只需要计数一次
Link1 Link2 Link3
2 3 1
最佳答案
通常,您不会将它们放入列中,而是将它们放入行中:
select LinkName, count(LinkName) as LinkCount
from table group by LinkName
……这将给予:
LinkName | LinkCount
Link1 | 2
Link2 | 3
Link3 | 1
这样,如果出现新的链接类型,就不会太大。这行得通吗,还是一定要在列中?如果是这样,您可能会看到一个计数(*)和两个子选择,或者一个相当复杂的自连接或某种case方法。比如:
select count(*) as Link1, (select count(*) from table where LinkName='Link2') as Link2...
from table where LinkName='Link1'
……或者类似的东西。
关于mysql - 需要每种值类型的行数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39831274/