我目前在mysql数据库中有一列,其中存储多个全名,以逗号分隔为字符串。我只需要检索所有名称的名字。
names
-------
happy sing, rahul bedi, ashish singh, venkat rao
期望的输出
fname
--------
happy
rahul
ashish
venkat
名称的数量将有所不同,但所有名称都将逗号作为分隔符
我尝试了以下操作,但这只应该给我一个名字:
SELECT LEFT(YourColumn, charindex(' ', YourColumn) - 1)
使用MySQL的SUBSTRING_INDEX函数:
SELECT SUBSTRING_INDEX(field, ',', 1)
但是,将列表保留在以分隔符分隔的字符串中通常是对像MySQL这样的关系数据库管理系统的低效使用:通常最好通过将这样的列表保留在(id,value)的单独表中来normalise数据结构对。