1

我想实现自动完成搜索。我有两个表,位置和子位置。

我只想为此返回一个字段。这是我的查询

SELECT l.loc_name,sl.sub_loc FROM Location l,SubLocation sl 
 where l.loc_name LIKE '$term%' OR sl.sub_loc='$term%'

我想将两个表的匹配结果显示为一个返回。EG,如果我输入 D,以便我可以从第一个表中查看迪拜,从第二个表中查看 DubaiMarina 作为一个列

4

1 回答 1

1

您可以使用UNION

SELECT l.loc_name FROM Location l
 where l.loc_name LIKE '$term%' 
UNION
SELECT sl.sub_loc FROM SubLocation sl 
 where sl.sub_loc='$term%'

如果表没有重复,您可以替换UNIONUNION ALLunion all 选项不会查找重复项,根据查询返回的数据量,它可能会更快一些。

于 2013-09-08T17:59:17.270 回答