我如何将字符串mysql数据库分成两个字段


How do I seperate a string a mysql db into two fields?

我有一个引线表,有一个名为referrer..的字段,其中有这样的数据

refferer 
yahoo:fine dining
google:cash register
google:sale systems
google:or sale
http://www.somesite.com/
google:software

这个数据是php $_SERVER['HTTP_REFERER'],但这都在一个字段…是否有一种简单的方法将其拆分为两个由:分隔的字段,因此最终结果应该是两个字段…referrer字段也可以为空

refferer                     keyword
yahoo                        fine dining
google                       cash register
google                       sale systems
google                       or sale
http://www.somesite.com/
google                       software

我真的只需要一个update语句来分隔关键字并插入到关键字字段

我看了一下mysql字符串函数,注意到SUBSTRING_INDEX,但不确定这是否会是这个任务的最佳工具

可以使用

SELECT SUBSTRING_INDEX(referrer, ':', -1) as keyword,SUBSTRING_INDEX(referrer, ':', 1) as referrer FROM table;