为什么MySQL php中会显示许多同名行?
我尝试将两个表进行内部联接,当我使用为什么MySQL php中会显示许多同名行?,mysql,sql,phpmyadmin,Mysql,Sql,Phpmyadmin,我尝试将两个表进行内部联接,当我使用“=”时,它可以工作,但当我使用“!=”时它不再工作了。结果是许多行具有相同的值 比如说 name: john john john john john mary mary mary mary lisa lisa lisa lisa lisa etc... (many other names) 这是我的代码。 SELECT part_names FROM participants INNER JOIN reservations ON participants.
“=”
时,它可以工作,但当我使用“!=”时代码>它不再工作了。结果是许多行具有相同的值
比如说
name:
john
john
john
john
john
mary
mary
mary
mary
lisa
lisa
lisa
lisa
lisa etc... (many other names)
这是我的代码。
SELECT part_names FROM participants INNER JOIN reservations ON participants.part_id != reservations.part_id
疯狂的事情是,我得到了5个约翰的,5个丽莎的,只有4个玛丽的(mary不应该显示,因为她的参与者id与预订中的id匹配。我如何解决这个问题,我只能在预订表中看到表中参与者的part_id不匹配的参与者?并且只有1个,所以不是Lisa,而是Lisa。)。
谢谢!我很确定您想要一个左联接
并与空比较:
SELECT p.part_names
FROM participants p LEFT JOIN
reservations r
ON p.part_id = r.part_id
WHERE r.part_id IS NULL;
也就是说,查找匹配项,然后返回没有匹配项的行。非常感谢,它很有效!我只是想知道,如果不使用“联接”或“左联接”,这是否可能,在哪里?或者这是不可能的?这是为了学校,可能只允许我使用我们在课堂上学到的东西。再次感谢!!!你在课堂上学到了什么?imnokaypovidz不在
或不存在
可能仅限于@RaymondNijlandWHERE@imnotokaypopvidz…我通常会使用NOT EXISTS
编写此文件。简短回答..内部联接
将多个表连接在一起,并可能导致完整的重复结果或列中的重复..好的,谢谢,我没有知道吗