Php 连接的反向效应

Php 连接的反向效应,php,mysql,Php,Mysql,我有两张桌子: 人员名单 我想忽略的人的名单 当我阅读人员列表时,我不想看到列表中被忽略的人员 我目前的解决方案是再次查询数据库(选择我想忽略的人),并将他们从我用PHP创建的数组中删除。它起作用了,很好 但是,我想在MySQL中实现这一点。我知道JOIN仅当另一个表中存在该行时才会加入。我正在寻找不同的内容(如果行存在,则不显示条目) 我在谷歌上搜索过,但由于没有“关键词”,所以没有搜索结果 谢谢在不了解您的模式的情况下,我建议您做以下几点: SELECT * FROM people WH

我有两张桌子:

  • 人员名单
  • 我想忽略的人的名单
当我阅读人员列表时,我不想看到列表中被忽略的人员

我目前的解决方案是再次查询数据库(选择我想忽略的人),并将他们从我用PHP创建的数组中删除。它起作用了,很好

但是,我想在MySQL中实现这一点。我知道
JOIN
仅当另一个表中存在该行时才会加入。我正在寻找不同的内容(如果行存在,则不显示条目)

我在谷歌上搜索过,但由于没有“关键词”,所以没有搜索结果


谢谢

在不了解您的模式的情况下,我建议您做以下几点:

SELECT * FROM people WHERE id NOT IN (SELECT person_id FROM ignored_people)

说明:

通过where子句从右侧排除我们不需要的记录


你可以试试这样的东西

 SELECT * FROM people p WHERE NOT EXISTS (SELECT i.id FROM ignorePeople i where p.id = i.id )

MySql中有一个关于数据库结构的链接

?如果没有任何源代码,我们无法帮助您需要
外部
部分吗?这不只是一个
左连接吗?@RocketHazmat,但我喜欢明确的表达。@MattBall:谢谢,我一直是作为
左连接学习的。
:-)
 SELECT * FROM people p WHERE NOT EXISTS (SELECT i.id FROM ignorePeople i where p.id = i.id )