Wo befindet sich der Syntaxfehler bei dieser einfachen Hive-Abfrage mit STRUCT?

Importieren wir eine einfache Tabelle in Hive:

hive> CREATE EXTERNAL TABLE tweets (id BIGINT, id_str STRING, user STRUCT<id:BIGINT, screen_name:STRING>)
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.JsonSerde'
LOCATION '/projets/tweets';

OK
Time taken: 2.253 seconds

hive> describe tweets.user;

OK
id                      bigint                  from deserializer
screen_name             string                  from deserializer
Time taken: 1.151 seconds, Fetched: 2 row(s)

Ich kann hier nicht herausfinden, wo der Syntaxfehler liegt:

hive> select user.id from tweets limit 5;
OK
Failed with exception java.io.IOException:org.apache.hadoop.hive.ql.metadata.HiveException: Error evaluating user.id
Time taken: 0.699 seconds

Ich verwende die Version 1.2.1 von Hive.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage