Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将两个表中的两个字段显示为mysql中的一个字段,如_Mysql_Select_Sql Like - Fatal编程技术网

将两个表中的两个字段显示为mysql中的一个字段,如

将两个表中的两个字段显示为mysql中的一个字段,如,mysql,select,sql-like,Mysql,Select,Sql Like,我想实现类似自动完成的搜索。我有两个表,位置和子位置 我只想为这个类返回一个字段。这是我的查询 SELECT l.loc_name,sl.sub_loc FROM Location l,SubLocation sl where l.loc_name LIKE '$term%' OR sl.sub_loc='$term%' 我想将两个表中的匹配结果显示为一个返回值。例如,如果我键入D,那么我可以将第一个表中的Dubai和第二个表中的DubaiMarina作为一个列查看 SELECT l.lo

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

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

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

我想将两个表中的匹配结果显示为一个返回值。例如,如果我键入D,那么我可以将第一个表中的Dubai和第二个表中的DubaiMarina作为一个列查看

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%'

如果表没有重复项,则可以将
UNION
替换为
UNION ALL
,因为UNION ALL选项不会查找重复项,因此速度可能会稍快一些,具体取决于查询返回的数据量

您可以使用
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%'

如果表没有重复项,则可以将
UNION
替换为
UNION ALL
,因为UNION ALL选项不会查找重复项,因此速度可能会稍快一些,具体取决于查询返回的数据量

不…我不需要连接它…我想做它的自动完成…我想建议用户他的位置或子位置,而他们键入任何东西,但为什么'码头'为D?现在看到它..这是迪拜码头..对不起,键入错误不..我不需要连接它…我想做它的自动完成…我想建议用户他的位置或子位置虽然他们键入了任何东西,但为什么要用“Marina”来表示D呢?现在就看吧。这是迪拜码头。遗憾的是,键入错误。这个名字太贵了,而且搜索时间太长了records@Methew:如果这对您来说太慢,您也可以使用。使用
UNION ALL
怎么样?@m请问UNION有多贵?您是否遗漏了问题中的任何信息?取决于您的选项。如果有多个查询提供相同的结果,则可以查看performance.UNION的成本太高,搜索太多查询需要花费时间records@Methew:如果这对您来说太慢,您也可以使用。使用
UNION ALL
怎么样?@m请问UNION有多贵?您是否遗漏了问题中的任何信息?取决于您的选项。如果有多个查询给出相同的结果,那么可以查看性能。