我正在寻找查询匹配列的正确方法(让它工作)。但那就是这个 - >和匹配的地址列,其中我只想要返回该行的标题。这将包括在关键字搜索中“按城市搜索”。专业创意?谢谢!
//works!
SELECT * FROM beaches
WHERE title LIKE '%".$input."%'
//doesn't work at all
AND
SELECT title FROM address WHERE LIKE '%".$input."%'
更新:
@LittleBobbyTables 而已!这就是您使用搜索查询查询多个列的方式。
SELECT *
FROM beaches
WHERE (title LIKE '%".$input."%') OR (address LIKE '%".$input."%')
至于另一个有用的答案,我认为JOINS在查询TABLES的地方,但我知道什么?我无法理解单个缺失的撇号。谢谢你。
答案 0 :(得分:1)
由于您只需要包含title
表格中的address
列,因此您需要使用UNION
:
SELECT title
FROM beaches
WHERE title LIKE '%".$input."%'
UNION ALL
SELECT title
FROM address
WHERE title LIKE '%".$input."%'
但是这种方法的问题是第一个查询返回的列需要匹配第二个查询返回的列。