Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.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_Join - Fatal编程技术网

MYSQL连接查询,即使内容不存在,也会追加包含两个表的数据';不相交

MYSQL连接查询,即使内容不存在,也会追加包含两个表的数据';不相交,mysql,join,Mysql,Join,尝试在MYSQL中执行联接,结果生成一个包含所有主题的数据集以及联接数据AppId&TopicOrder其中AppId=70 表1:主题 Id | Topic Name -------------------- 1 | Inspiration 2 | Motivation 3 | Happiness 4 | Health 5 | Love 6 | Career 表2:应用程序主题 AppId | TopicId | TopicOrder ----

尝试在MYSQL中执行联接,结果生成一个包含所有
主题的数据集以及联接数据
AppId
&
TopicOrder
其中
AppId=70

表1:主题

Id  |  Topic Name
--------------------
1   |  Inspiration
2   |  Motivation
3   |  Happiness
4   |  Health
5   |  Love
6   |  Career
表2:应用程序主题

AppId  |  TopicId  |  TopicOrder
-----------------------------------
70     |  1        |  1
70     |  4        |  2
70     |  6        |  3
50     |  2        |  1
50     |  3        |  2
最终目标:

Id  |  Topic Name  |  AppId  |  TopicOrder
---------------------------------------------
1   |  Inspiration | 70      |  1
2   |  Motivation  |         |
3   |  Happiness   |         |
4   |  Health      | 70      |  2
5   |  Love        |         |
6   |  Career      | 70      |  3

下面的连接将得到结果

SELECT * FROM topic LEFT JOIN 
   (SELECT * FROM apptopic WHERE apptopic.appId = 70) AS a
   ON topic.id = a.topicId

使用联接在数据库级别执行此操作要容易得多。发布你的表格。yeh,也尝试过了,但看不到如何获得所有主题以及特定AppId的关联匹配,内部、左侧和右侧都只生成相交结果@E4C5我想这就是问题的关键:)请发布一个MCVE,表格中有一些示例行和预期的输出。如果有人想通过php来帮助您,就让这个问题成为可能。根据建议@e4c5发布更新的新问题。请让我知道这是否足够。Bam!谢谢你,很高兴能帮上忙