Mysql 内部联接而不是内部选择不起作用
我有一个正在工作的查询(和两个名为topic和topic\u dataitem\u relation的表): 但我想当我使用加入时,我不能达到同样的结果:Mysql 内部联接而不是内部选择不起作用,mysql,sql,Mysql,Sql,我有一个正在工作的查询(和两个名为topic和topic\u dataitem\u relation的表): 但我想当我使用加入时,我不能达到同样的结果: SELECT distinct * FROM omid.topic as t left join omid.topic_dataitem_relation As tdr ON t.ID != tdr.TopicID WHERE tdr.DataitemID = 37; 如果可以加入,有人能帮我吗?(提前感谢)加入也是一个条件,所以要应用
SELECT distinct *
FROM omid.topic as t
left join omid.topic_dataitem_relation As tdr
ON t.ID != tdr.TopicID
WHERE tdr.DataitemID = 37;
如果可以加入,有人能帮我吗?(提前感谢)加入也是一个条件,所以要应用其他条件,必须使用,而, 您的查询将是:
SELECT *
FROM omid.topic as t
JOIN omid.topic_dataitem_relation As tdr
ON t.ID != tdr.TopicID
AND tdr.DataitemID = 37; /* Your WHERE BECOME AND */
/* AND condition2 = value 2*/
/* AND ..... */
非常感谢你的回答,但还是一样的问题。它不起作用!“DISTINCT*”正是您可以在sql查询中输入的最愚蠢的东西。我们不需要它,我会无意识地粘贴它,即使没有DISTINCT也不会返回正确的结果。请执行以下操作:从omid.topic中选择*作为t JOIN omid.topic\u dataitem\u relationship作为t.ID上的tdr!=tdr.TopicID和tdr.dataitemid37;
SELECT *
FROM omid.topic as t
JOIN omid.topic_dataitem_relation As tdr
ON t.ID != tdr.TopicID
AND tdr.DataitemID = 37; /* Your WHERE BECOME AND */
/* AND condition2 = value 2*/
/* AND ..... */