我有這樣的查詢,並且顯然Impala不支持SELECT語句中的子查詢。我如何在Impala中整齊地重寫它?(impala)AnalysisException:子查詢在選擇列表中不受支持
SELECT
col1,
col2,
...
CASE
WHEN (SELECT 1
FROM
table1 x,
table2 y
WHERE
x.id = y.id
LIMIT 1) = 1
THEN
'A'
ELSE
'B'
END
coln
FROM
...
你的查詢有以下錯誤(S):
AnalysisException:子查詢不在選擇列表的支持。
謝謝,這個工程。儘管如此,我的實際上是一個非常大的查詢,有多個子查詢,並且這樣做會讓人感到害怕:)如果我沒有錯,它會花費額外的處理器時間。 – burakongun
我自己沒有檢查過查詢計劃,但是你的例子中的子查詢與主查詢是獨立的,因此我猜它只會被計算一次。如果你有一個依賴子查詢,你可以使用一個連接,但最好的方法取決於實際的查詢。 – Zoltan