select substr(shopabb, 1, 4) as shopgroup, count(*)
from table
where shopabb like'h%'
group by substr(shoppabb, 1, 4)
order by count(*) DESC;
我正在按子字符串组计算表中所有的商店缩写。我有另一个名为city的专栏,显示了商店缩写的位置。现在我还想选择/显示子字符串组最常出现的城市,如果可能的话,还要显示这个城市中shopabb的计数。结果应该是这样的:
shopabb Count(*) City Count_City
-----------------------------------------
hel 50 London 40
heal 20 Berlin 15
hot 10 Rome 8
谢谢!
1条答案
按热度按时间axzmvihb1#
使用
row_number()
具有两个聚合级别:这里有一个db<>小提琴说明了语法的工作原理。
编辑:
您可以不使用窗口函数来执行此操作,但要复杂得多:
请注意,如果两个城市的最大值相等,那么这将返回重复的结果。要得到总的结果还需要更多的工作。