查询多列sql。返回匹配的标题列,并返回地址列匹配的行标题

时间:2012-07-09 14:26:38

标签: sql

我正在寻找查询匹配列的正确方法(让它工作)。但那就是这个 - >和匹配的地址列,其中我只想要返回该行的标题。这将包括在关键字搜索中“按城市搜索”。专业创意?谢谢!

//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的地方,但我知道什么?我无法理解单个缺失的撇号。谢谢你。

1 个答案:

答案 0 :(得分:1)

由于您只需要包含title表格中的address列,因此您需要使用UNION

SELECT title 
FROM beaches
WHERE title LIKE '%".$input."%' 
UNION ALL
SELECT title 
FROM address 
WHERE title  LIKE '%".$input."%'

但是这种方法的问题是第一个查询返回的列需要匹配第二个查询返回的列。