sql - 左连接实现减号不起作用
问题描述
我有 table1 和 table2 如下:
当我在表之间执行以下查询时:
SELECT
a.*
FROM
(
SELECT
empid
,ename
,sal
,deptno
FROM
table1
GROUP BY
1,2,3,4
) AS a
LEFT JOIN
(
SELECT
empid
,ename
,sal
,deptno
FROM
table2
) AS b
ON
a.empid = b.empid
AND a.ename = b.ename
AND a.sal = b.sal
AND a.deptno = b.deptno
WHERE
b.empid IS NULL
AND b.ename IS NULL
AND b.sal IS NULL
AND b.deptno IS NULL;
我们Minus
在 Bigquery 中没有。这就是执行的原因Left Join
。
我需要的输出是 Table1 减去 table2。
请帮我解决这个问题..
谢谢
解决方案
以下是 BigQuery 标准 SQL
#standardSQL
SELECT * FROM `project.dataset.table1`
EXCEPT DISTINCT
SELECT * FROM `project.dataset.table2`
推荐阅读
- r - 创建一个函数以在 R 中接收数据框名称和列
- javafx - java - 如何连接两个圆圈,每个圆圈都在JavaFX的窗格中?
- c# - C# - 在派生类上添加约束
- java - 又一个“比较法违背其总约”
- debugging - 调试器未在 Ubuntu 18.04.2 LTS 上的 QtCreator 4.0.3 中启动
- python - 如何从测试文件的列中获取元素
- android - Retrofit能否支持Android中同一个api的不同版本
- python-3.x - OPENPYXL For 循环遍历指定列中的每个单元格并将其值替换为大写字母
- python - 具有虚拟环境的 WSGI 应用程序中的 ImportError
- django - 如何与父级一起显示多个相关的外键