mysql查询麻烦

时间:2010-05-04 07:14:58

标签: mysql

在我的数据库中,我的电话号码带有国家/地区代码,看起来像是

0044-123456
0044-123456
0014-123456
0014-123456
0024-123456
0024-123456
0034-123456
0044-123456
0044-123456
0024-123456
0034-123456
084-123456
084-123456

我希望按国家/地区总计数字,例如此输出

0044 (2)
0024 (2)
0034 (1)
084 (2)
064 (5)

是否可以使用SQL查询执行此操作?

2 个答案:

答案 0 :(得分:3)

试试这个:

SELECT count(SUBSTR(phoneNumber, 1, LOCATE("-", phoneNumber)))
FROM tableName
GROUP BY SUBSTR(phoneNumber, 1, LOCATE("-", phoneNumber));

答案 1 :(得分:1)

这应该可以解决问题:

  SELECT phoneNumber,
         SUBSTR(phoneNumber, 1, LOCATE("-", phoneNumber) - 1) AS countryCode,
         COUNT(*) AS count
    FROM phoneNumbers
GROUP BY countryCode

即。从数字中提取国家代码,并在其上分组。