我有一张桌子。表中有两组数据:
我想得到 (A - B),即属于 A 而不是 B 的项目/行。
为了说明,我创建了下表,其中包含两列:
id | X | Y |
---|---|---|
1 | 一 | 1 |
2 | 一 | 2 |
3 | 一 | 5 |
4 | b | 2 |
5 | b | 6 |
6 | b | 1 |
设置 A = { row: row.X == a }(X 列值等于 a 的所有行)
Set B = { row: row.X == b }(X 列值等于 b 的所有行)
我想在 A 中获取列表行,其中 A.Y 不等于 (!=) 到 B.Y。如果您查看上表,则只有第 3 行符合条件。
id | X | Y |
---|---|---|
3 | 一 | 5 |
在 SQL 中,MINUS 运算符可以解决问题。但是Laravel的查询构建器中并没有对应的方法。
使用 join/left-join 方法可以实现的最佳方式是什么?还有其他选择吗?