【发布时间】:2019-07-09 10:33:36
【问题描述】:
如何在 MySQL 的 varchar 字段中提取 first 和 second 单词?
【问题讨论】:
标签: mysql
如何在 MySQL 的 varchar 字段中提取 first 和 second 单词?
【问题讨论】:
标签: mysql
只需使用 SUBSTRING_INDEX (official MySQL documentation, official MariaDb Documentation)
SELECT Substring_index(`sentence`, ' ', 1) AS first_word,
Substring_index(Substring_index(`sentence`, ' ', 2), ' ', -1) AS second_word,
Substring_index(Substring_index(`sentence`, ' ', 3), ' ', -1) AS third_word
FROM `test`
https://www.db-fiddle.com/f/iSGActpsMNzHze13W2QA3q/1
还可以使用此解决方案使其更通用:
SET @N = 3; --3rd word
SET @delimiter = ' ';
SELECT
SUBSTRING_INDEX(SUBSTRING_INDEX(`sentence`, @delimiter, @N), @delimiter, -1)
FROM
`test`;
【讨论】: