如何在MySQL中选择列名称中的文本部分以使用COUNT()?

如何在MySQL中选择列名称中的文本部分以使用COUNT()?,mysql,sql,group-by,sql-order-by,Mysql,Sql,Group By,Sql Order By,在“名称”一栏中,有一组公交车站名称(起点站名称/终点站名称,例如,它们看起来像“LaSalle/Crawford”),我被要求查找最受欢迎的公交起点站。我尝试过使用REGEXP或类似的工具,但是MySQL无法识别“/”符号,并且根本没有返回任何值。有什么建议吗 我被要求找到最受欢迎的公共汽车起点站 您可以使用substring\u index()提取起始桩号。然后,您可以通过该方法进行聚合、排序和限制: select substring_index(mycol, ' / ', 1) start

在“名称”一栏中,有一组公交车站名称(起点站名称/终点站名称,例如,它们看起来像“LaSalle/Crawford”),我被要求查找最受欢迎的公交起点站。我尝试过使用REGEXP或类似的工具,但是MySQL无法识别“/”符号,并且根本没有返回任何值。有什么建议吗

我被要求找到最受欢迎的公共汽车起点站

您可以使用
substring\u index()
提取起始桩号。然后,您可以通过该方法进行聚合、排序和限制:

select substring_index(mycol, ' / ', 1) starting_station
from mytable
group by starting_station
order by count(*) desc
limit 1

我尝试过使用它,但是当我输入查询时,答案是我缺少一个子查询。所以我认为我不能这样编写查询。@moz:请严格按照提供的方式运行查询。如果有错误,请分享完整的错误信息。我的意思是查询是用SQL进行的,但当我通过学校的在线门户提交时,它告诉我使用子查询来写出来。@NIA:我不知道你的老师希望你如何解决这个问题。但就目前而言,这个解决方案在MySQL中是100%正确的。。。