Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.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_Merge - Fatal编程技术网

Mysql 将两个选项组合在一起会选择彼此相邻,而不是在另一个之上

Mysql 将两个选项组合在一起会选择彼此相邻,而不是在另一个之上,mysql,merge,Mysql,Merge,我的MySQL数据库中有以下结构: +--------------+ +--------------+ | table_1 | | table_2 | +----+---------+ +----+---------+ | id | name | | id | surname | +----+---------+ +----+---------+ | 1 | tbl1_1 | |

我的MySQL数据库中有以下结构:

   +--------------+    +--------------+
   |    table_1   |    |    table_2   | 
   +----+---------+    +----+---------+  
   | id |   name  |    | id | surname |  
   +----+---------+    +----+---------+  
   | 1  | tbl1_1  |    | 1  | tbl2_1  |  
   | 2  | tbl1_2  |    | 2  | tbl2_2  |   
   | 3  | tbl1_3  |    | 3  | tbl2_3  |  
   +----+---------+    +----+---------+   
我需要一个返回以下内容的查询:

   +----+---------+---------+
   | id |   name  | surname |
   +----+---------+---------+
   | 2  | tbl1_2  | tbl2_2  |
   +----+---------+---------+
我在谷歌上搜索了一下,找到的是UNION,它的功能是:

   +----+---------+
   | id |  name   |
   +----+---------+
   | 2  | tbl1_2  | 
   | 2  | tbl2_3  |
   +----+---------+  
这不是我想要的。我需要它们相邻组合,而不是相互重叠。

您需要使用一个,连接类型取决于您的要求

SELECT id,name,surname FROM table_1 INNER JOIN table_2 on table_2.id=table_1.id WHERE table_1.id = 2

内部联接将选择两个表中的所有行,只要我们匹配的id列之间存在匹配,即两个表中都存在id,这就是必须执行的操作:

SELECT table_1.id, name, surname FROM table_1, table_2 WHERE table_1.id = 2 AND table_2.id = 2

你能举个例子吗?不,它只选择所有行,我还需要应用WHERE子句。