我有两个表:排除记录,如果右表匹配
表一个:
+--+----+
|id|name|
+--+----+
|0 |foo |
|1 |bar |
|2 |baz |
+-------+
表乙:
+--+----+
|A |cond|
+--+----+
|0 |X |
|1 |Y |
+-------+
哪里BA列A.id值。
我想从一个其中在乙表时B.cond =“X”不匹配选择所有的行。
所以,结果应该是:
- 吧
- 巴兹
如何写这个SQL请求,加入(或类似性能的方法)?
关于性能问题,不存在与JOIN更少,更好或相等? – bux
@bux为什么不吸它,看看? – Strawberry
@bux您可能会发现这篇文章很有趣:http://explainextended.com/2009/09/18/not-in-vs-not-exists-vs-left-join-is-null-mysql/虽然它可能是稍微过时了。 – jpw