gpt4 book ai didi

sql - HIVE ERROR : I am getting EOF error at 1, 对于第一个 LEFT OUTER JOIN 的 ON 子句之后的 WHERE 子句,对于配置单元中的以下代码

转载 作者:可可西里 更新时间:2023-11-01 16:29:29 26 4
gpt4 key购买 nike

select *
from table1 a

LEFT OUTER JOIN
(
select *
from table99
where col = 1
)b

ON (a.col1 = b.col1)

WHERE a.col2 = b.col2 AND SIGN(a.col3) = 1


LEFT OUTER JOIN
(
select *
from table99
where col = 2
)c

ON (a.col1 = c.col1)

WHERE a.col2 = c.col2 AND SIGN(a.col3) = 1;

最佳答案

正确形成的 SQL 查询只有一个 where 子句(不包括 CTE 和子查询)。所以:

select *
from table1 a LEFT OUTER JOIN
(select *
from table99
where col = 1
) b
ON a.col1 = b.col1 AND
a.col2 = b.col2 LEFT OUTER JOIN
(select *
from table99
where col = 2
) c
ON a.col1 = c.col1 AND
a.col2 = c.col2
WHERE SIGN(a.col3) = 1;

但是,这似乎太复杂了。这个怎么样?

select *
from table1 a LEFT OUTER JOIN
table99 b
ON a.col1 = b.col1 AND
a.col2 = b.col2 AND
b.col = 1 LEFT OUTER JOIN
table99 c
ON a.col1 = c.col1 AND
a.col2 = c.col2 AND
c.col = 2
WHERE a.col3 > 0;

关于sql - HIVE ERROR : I am getting EOF error at 1, 对于第一个 LEFT OUTER JOIN 的 ON 子句之后的 WHERE 子句,对于配置单元中的以下代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41429257/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com