下面的代码在Sequel Pro中正确工作,但是当我试图使用PHP MySQLi运行它时,它不做任何事情。这是解决我在多个列上搜索一个查询问题的最佳方法吗?
多谢!
SELECT * FROM suppliers JOIN users on suppliers.user_id = users.id WHERE company_name LIKE '%hudd%'
UNION
SELECT * FROM suppliers JOIN users on suppliers.user_id = users.id WHERE additional_contacts LIKE '%hudd%'
UNION
SELECT * FROM suppliers JOIN users on suppliers.user_id = users.id WHERE company_number LIKE '%hudd%'
UNION
SELECT * FROM suppliers JOIN users on suppliers.user_id = users.id WHERE city LIKE '%lee%'
UNION
SELECT * FROM suppliers JOIN users on suppliers.user_id = users.id WHERE email LIKE '%miln.co%'
UNION
SELECT * FROM suppliers JOIN users on suppliers.user_id = users.id WHERE CONCAT_WS(" ", 'first_name', 'last_name') LIKE '%hudd%'
ORDER BY company_name
你可以试试:
SELECT
DISTINCT *
FROM
suppliers
JOIN
users ON suppliers.user_id = users.id
WHERE
company_name LIKE '%hudd%'
OR additional_contacts LIKE '%hudd%'
OR company_number LIKE '%hudd%'
OR city LIKE '%lee%'
OR email LIKE '%miln.co%'
OR CONCAT_WS(' ', 'first_name', 'last_name') LIKE '%hudd%'
ORDER BY company_name
使用BOOLEAN模式
SELECT * FROM test WHERE MATCH (column1,column2)
AGAINST ('+value1 +value2 +value3' IN BOOLEAN MODE);