BigQuery使用ALL关键字子查询报错,求适配的正确写法
解决BigQuery中
> ALL语法报错的问题 BigQuery不支持> ALL这类标量比较语法,你可以将原查询逻辑转换为判断年龄是否大于男性员工的最大年龄——因为age > ALL(...)和age > (SELECT MAX(age) ...)的逻辑完全等价。
修改后的SQL语句如下:
select * from employee where age > ( select MAX(age) from employee where gender = 'M')
如果需要保留原SQL在SQL Server中的特殊逻辑(当男性员工结果集为空时返回所有员工),可以补充判断条件:
select * from employee where (select COUNT(*) from employee where gender = 'M') = 0 or age > (select MAX(age) from employee where gender = 'M')
内容的提问来源于stack exchange,提问作者Daniel
相关产品推荐
相关产品推荐

