分组按字段中的子字符串

时间:2011-09-20 08:28:29

标签: mysql sql group-by substring

我有一张城市表,其中我有“洛杉矶(加利福尼亚州)”等城市名称。

我尝试用请求提取parantheses之间包含的所有值,但我无法做得好......

我试过的请求看起来像这样:

SELECT cityname FROM cities WHERE cityname LIKE "%(%)%" 
GROUP BY SUBSTR(cityname, FIND_IN_SET(cityname, '('))

或类似的东西(没有分组):

SELECT SUBSTR(cityname, FIND_IN_SET(cityname, '(')) FROM cities 
WHERE cityname LIKE "%(%)%"

这些请求似乎有什么问题?

1 个答案:

答案 0 :(得分:2)

试试这个:

SELECT SUBSTRING(cityname, CHARINDEX('(',cityname)+1,
           (LEN(cityname) - CHARINDEX('(',cityname)-1)) 
FROM cities WHERE cityname LIKE '(%)%'