我的表是:
Name | Surname
John White
John Red
我想如果我输入的名字是John
,它会列出我所有的名字John 的名字
例如
John White
John Red
为此,以下说明就足够了:
SELECT surname, name FROM table WHERE name LIKE :keyword
但是,如果您继续输入姓氏John R
显示的记录是:
John Red
在实践中,在这个选择中,我希望将字段name
和surname
视为单个字段
您可以使用concat()
:
SELECT surname, name
FROM table
WHERE CONCAT(name, ' ', surname) LIKE CONCAT('%', :keyword, '%')
这假设在keyword
中始终使用一个空格来分隔名字和姓氏。
注意,我还在关键字周围添加了通配符,因为它们似乎不是参数值的一部分。