首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mySQL按首字母和数字0-9分组

mySQL按首字母和数字0-9分组
EN

Stack Overflow用户
提问于 2012-12-17 21:37:09
回答 3查看 1.1K关注 0票数 1

我有一个很长的大学列表,我想按第一个字母对它们进行分组,这不是问题。但是我有一些大学的名字是用数字来统计的

代码语言:javascript
复制
14 Stars (London) Ltd t/a EUROPEAN COLLEGE FOR HIGHER EDUCATION (London)
3 D MORDEN COLLEGE 

我想把所有以数字开头的名字放在一个类别"0-9“中。

EN

回答 3

Stack Overflow用户

发布于 2012-12-17 21:44:24

我认为你需要这样的东西:

代码语言:javascript
复制
select
  case when name rlike '^[0-9]' then '0-9' else left(name,1) end as first_letter
  count(*)
from univ
group by first_letter 
票数 2
EN

Stack Overflow用户

发布于 2012-12-17 21:40:55

你只需要在你的查询中使用这个

代码语言:javascript
复制
   WHERE   title NOT RLIKE '^[A-Z]'       //this checks if first letter not from a-z

您还可以在sql中使用CASE

代码语言:javascript
复制
  CASE  title NOT RLIKE '^[A-Z]'  then ........ END
  CASE  title  RLIKE '^[A-Z]'     then ........ END
票数 0
EN

Stack Overflow用户

发布于 2012-12-31 07:19:56

抱歉,伙计们,非常感谢你们的帮助。我的一个朋友昨天帮助我,我解决了我的问题

SELECT IF(substr(registered_name,1,1)REGEXP '^[0-9]','0-9',substr(registered_name,1,1)) Category,

...//rest of my query

GROUP BY Category

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13915235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档