我想运行一个只从特定字段返回第一个单词的查询,这个字段有多个用空格分隔的单词,我假设我可能需要执行一些正则表达式来完成这个工作?我知道如何在PHP中使用几种方法来做到这一点,但这最好在数据库方面进行。任何想法都非常感激。感谢。
答案 0 :(得分:63)
SUBSTRING_INDEX
:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substring-index
SELECT SUBSTRING_INDEX(`name`, ' ', 1);
答案 1 :(得分:20)
你走了:))
SELECT SUBSTRING_INDEX( `field` , ' ', 1 ) AS `field_first_word`
FROM `your_table`
答案 2 :(得分:3)
select
substring(test_field, 1, instr(test_field, ' '))
from
test_table
答案 3 :(得分:2)
SELECT
SUBSTR(field_name, 1, LOCATE(' ', field_name)) AS first_word
FROM
table