Die erste Abfrage funktioniert gut. Aber die zweite Abfrage gibt den Fehler "[Fehler 10025] Ausdruck nicht in GROUP BY Schlüssel '' -3 ''". Ich habe verwandte Beiträge gelesen und bin mir bisher nicht sicher, wie ich den Fehler beheben kann.Hive [Fehler 10025] Ausdruck nicht in GROUP BY
Vielen Dank für Ihre Hilfe zu diesem Thema.
Abfrage # 1
SELECT case when user_id = '-3' then cast(order_id as varchar(255)) else user_id end as user_id2
from orders
where user_id = '-3'
Abfrage # 2
SELECT case when user_id = '-3' then cast(order_id as varchar(255)) else user_id end as user_id2
,sum(order_value) as sales
from orders
group by 1
Traceback (most recent call last):
File "/home/net1/liulu001/conversant/troubleshooting_userid.py", line 28, in <module>
cursor.execute(q)
File "/home/net1/liulu001/.local/lib/python2.6/site-packages/impala/hiveserver2.py", line 302, in execute
configuration=configuration)
File "/home/net1/liulu001/.local/lib/python2.6/site-packages/impala/hiveserver2.py", line 343, in execute_async
self._execute_async(op)
File "/home/net1/liulu001/.local/lib/python2.6/site-packages/impala/hiveserver2.py", line 362, in _execute_async
operation_fn()
File "/home/net1/liulu001/.local/lib/python2.6/site-packages/impala/hiveserver2.py", line 340, in op
async=True)
File "/home/net1/liulu001/.local/lib/python2.6/site-packages/impala/hiveserver2.py", line 1027, in execute
return self._operation('ExecuteStatement', req)
File "/home/net1/liulu001/.local/lib/python2.6/site-packages/impala/hiveserver2.py", line 957, in _operation
resp = self._rpc(kind, request)
File "/home/net1/liulu001/.local/lib/python2.6/site-packages/impala/hiveserver2.py", line 925, in _rpc
err_if_rpc_not_ok(response)
File "/home/net1/liulu001/.local/lib/python2.6/site-packages/impala/hiveserver2.py", line 704, in err_if_rpc_not_ok
raise HiveServer2Error(resp.status.errorMessage)
impala.error.HiveServer2Error: Error while compiling statement: FAILED: SemanticException [Error 10025]: Line 3:13 Expression not in GROUP BY key ''-3''
Danke. Ich dachte, ich habe versucht, die Gruppe nach Syntax zu verwenden, die Sie vorgeschlagen haben, und ähnliche Fehler bekommen. Aber ich habe es gerade nochmal ausprobiert und es hat gut funktioniert. Also Problem gelöst. Danke noch einmal! –
Also, bist du mit meiner Antwort zufrieden? Dann stimme bitte ab oder akzeptiere oder schlage vor, wie ich die Antwort bitte verbessern kann. – leftjoin
Ja, mit der Antwort zufrieden. Nur als nützlich gewählt. Ich denke, die 0 änderte sich erst, als die Stimmen eine bestimmte Schwelle erreichten. Danke noch einmal! –