1

我尝试在SELECT语句和查询时过滤我的列名,如下所示:

$query = "select p.id, p.name from `person` p";

列“名称”数据如下所示:

安吉丽娜朱莉 | 布拉德皮特 | 大卫贝克汉姆……

筛选 :

选择列名称(p.name)时,我只需要选择“名称”字符串,然后在空间后删除所有字符串。意思是当我选择列时,我只选择名字安吉丽娜、布拉德、大卫......

*我知道我们可以使用 implode 来做到这一点,但我想在查询行中进行过滤。

4

3 回答 3

1

试试这个:

select p.id, left(p.name,locate(' ',p.name)-1) from `person` p

SQL Fiddle 演示

于 2012-11-23T07:01:09.330 回答
1

试试这个:

SELECT p.id, SUBSTRING_INDEX(p.name , ' ', 1) `name`  FROM `person` p;
于 2012-11-23T07:01:27.683 回答
1

试试这个::

select substring_index(p.name,' ',1) as name, p.id from person p
于 2012-11-23T07:02:58.563 回答