Php 从字段中提取第一个单词的MySQL查询

Php 从字段中提取第一个单词的MySQL查询,php,sql,mysql,Php,Sql,Mysql,我想运行一个查询,只返回某个特定字段的第一个单词,这个字段有多个用空格分隔的单词,我想我可能需要执行一些正则表达式来完成这个任务?我知道如何在PHP中使用一些方法来实现这一点,但最好在数据库端执行。非常感谢您的任何想法。谢谢。子字符串索引: 给你:) 需要添加-1或获得额外的空间。使用选择子字符串\u索引(名称,“”-1)选择最后一个单词。那么那些只有一个单词且没有空格的记录呢?我们有没有任何方法可以得到第一个单词呢?好的,您说过该记录只有一个单词且没有空格,所以在这种情况下,“完整值”表示该单

我想运行一个查询,只返回某个特定字段的第一个单词,这个字段有多个用空格分隔的单词,我想我可能需要执行一些正则表达式来完成这个任务?我知道如何在PHP中使用一些方法来实现这一点,但最好在数据库端执行。非常感谢您的任何想法。谢谢。

子字符串索引

给你:)


需要添加-1或获得额外的空间。使用
选择子字符串\u索引(
名称
,“”-1)
选择最后一个单词。那么那些只有一个单词且没有空格的记录呢?我们有没有任何方法可以得到第一个单词呢?好的,您说过该记录只有一个单词且没有空格,所以在这种情况下,“完整值”表示该单词。不确定什么是不清楚的,就去试试吧。
SELECT SUBSTRING_INDEX(`name`, ' ', 1);
SELECT SUBSTRING_INDEX( `field` , ' ', 1 ) AS `field_first_word`
FROM `your_table`
SELECT
  SUBSTR(field_name, 1, LOCATE(' ', field_name)) AS first_word
FROM
  table
select 
    substring(test_field, 1, instr(test_field, ' ')) 
from 
    test_table