在mysql中将数据从一个字段提取到另一个字段

时间:2011-01-20 04:37:47

标签: sql mysql string

我有一张旧表,其中有一个像这样的列

1 | McDonalds (Main Street)
2 | McDonalds (1st Ave)
3 | The Goose
4 | BurgerKing (Central Gardes)
...

我希望匹配场地like ' %(%)',然后将括号中的内容提取到第二个字段 导致

1 | McDonalds | Main Street
2 | McDonalds | 1st Ave
3 | The Goose | NULL
4 | BurgerKing| Central Gardes
...

怎么会这样呢?

2 个答案:

答案 0 :(得分:1)

MySQL为string functionsfinding characters提供了extracting substrings。您还可以使用control flow functions来处理场地不存在的情况。

答案 1 :(得分:0)

我安装了这些用户定义的函数

http://www.mysqludf.org/lib_mysqludf_preg/

然后我可以通过

选择“分支”
SELECT `id`, `name`, preg_capture('/.*?\\((.*)\\)/',`name`,1) AS branch FROM `venues`