-2

我有一个搜索系统,可以帮助您过滤人员列表 我的表(人员)

id | name | surname | email

有一个文本框,您可以在其中输入姓名、姓氏或电子邮件,以便在您键入时过滤列表。

如果我只写名字或只写姓氏,它会找到记录。但是,如果我输入姓名和姓氏,它不会显示任何内容。

我试过Mysql的CONCAT函数。但它没有用。

我的查询:

SELECT * 
FROM People 
WHERE name LIKE :p1 
    OR surname LIKE :p2 
    OR email LIKE :p3

我试过这个

SELECT * 
FROM People 
WHERE name LIKE :p1 
    OR surname LIKE :p2 
    OR email LIKE :p3 
    OR CONCAT(name, char(32), surname) LIKE :p4

和这个

SELECT id, 
    name, 
    surname, 
    CONCAT(name, char(32), surname) AS fullname 
FROM People 
WHERE name LIKE :p1 
    OR surname LIKE :p2 
    OR email LIKE :p3 
    OR fullname LIKE :p4

输入name + [空格] + surname 时如何获取可以查找结果的系统?

4

1 回答 1

0

您可以拆分关键字并在列(姓名、姓氏和电子邮件)中搜索每个单独的关键字(或表达式)。

于 2013-07-26T14:03:36.307 回答