[英]Laravel syntax to get query with distinct results
我有两个 MySQL 表:
+-----------+ +-----------+
| id.Table1 | | id.Table2 |
+-----------+ +-----------+
| 1 | | 2 |
| 2 | | 3 |
| 3 | | 4 |
| 4 | +-----------+
| 5 |
+-----------+
我想得到一个带有这个结果的查询:
+-----------+
| id.Table1 |
+-----------+
| 1 |
| 5 |
+-----------+
我该怎么做?
一种方法是使用NOT IN
子句:
SELECT ID FROM TABLE1 WHERE ID NOT IN (SELECT ID FROM TABLE2)
尝试NOT EXISTS
SELECT ID FROM TABLE1 as a WHERE NOT EXISTS (SELECT ID FROM TABLE2 as b where a.ID=b.ID)
您可以通过使用LEFT JOIN
和NULL
检查来实现结果。 工作查询是:
SELECT T1.Id
FROM Table1 T1
LEFT JOIN Table2 T2 ON T2.Id = T1.Id
WHERE T2.Id IS NULL
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.