You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hive.apache.org by Thomas Adam <th...@tecbot.de> on 2013/02/08 08:32:19 UTC
Issue with multi insert
Hi,
I am having issues to execute the following multi insert query:
FROM
${tmp_users_table} u
JOIN
${user_evens_table} ue
ON (
u.id = ue.user
)
INSERT OVERWRITE TABLE ${dau_table} PARTITION (dt='${date}')
SELECT
u.country,
u.platform,
u.gender,
COUNT(DISTINCT(u.id))
WHERE
ue.dt = '${date}'
GROUP BY
u.country,
u.platform,
u.gender
INSERT OVERWRITE TABLE ${wau_table} PARTITION (dt='${date}')
SELECT
u.country,
u.platform,
u.gender,
COUNT(DISTINCT(u.id))
WHERE
ue.dt BETWEEN date_sub('${date}', 7) AND '${date}'
GROUP BY
u.country,
u.platform,
u.gender
INSERT OVERWRITE TABLE ${mau_table} PARTITION (dt='${date}')
SELECT
u.country,
u.platform,
u.gender,
COUNT(DISTINCT(u.id))
WHERE
ue.dt BETWEEN date_sub('${date}', 30) AND '${date}'
GROUP BY
u.country,
u.platform,
u.gender;
I got the error: FAILED: SemanticException [Error 10025]: Line 15:6
Expression not in GROUP BY key 'dt'
If I remove the second and third insert the query works.
Can anyone explain me why it's not working? Why I need to add the dt
field to GROUP BY?
Thanks & regards,
Thomas