HIVE 中的子查询
Subqueries in HIVE
我在 HIVE 中有这个嵌套子查询。当我执行 1 个子查询时,我的结果 return 很好。但是,当我尝试添加第二个子查询时,我收到以下错误。
Prepare error: org.apache.hive.service.cli.HiveSQLException: Error
while compiling statement: FAILED: ParseException line
1:861 mismatched input '.' expecting ) near 'Subquery_1' in subquery source
下面是我试图实现的嵌套子查询。在标准 SQL 中镜像此查询工作正常。但是我对HQL不是很熟悉,不知从何入手。
LEFT OUTER JOIN
(SELECT smz_au.mid,
smz_au.oid,
Subquery_1.oc
Subquery_1.ri,
Subquery_1.riil,
Subquery_1.rrc
FROM
smz_au
LEFT OUTER JOIN
(SELECT smz_au_1.oid
smz_au_1.oc,
smz_au_1.ri,
smz_au_1.riil,
smz_au_1.rrc
FROM smz_au smz_au_1
WHERE (smz_au_1.initial_status = 'Allocated')
) Subquery_1 ON (smz_au.oid = Subquery_1.oid)
WHERE (smz_au.initial_status = 'Loan Start')
) Subquery ON (smz_ls.mid = Subquery.mid)
select 中 Subquery_1.ri,
之前的 Subquery_1.oc
之后缺少逗号。
Subquery_1.oc --whithout comma here, Subquery_1.ri is an alias of Subquery_1.oc column
Subquery_1.ri, --and alias should be without dot '.'
--this is why you got " mismatched input '.' "
我在 HIVE 中有这个嵌套子查询。当我执行 1 个子查询时,我的结果 return 很好。但是,当我尝试添加第二个子查询时,我收到以下错误。
Prepare error: org.apache.hive.service.cli.HiveSQLException: Error while compiling statement: FAILED: ParseException line 1:861 mismatched input '.' expecting ) near 'Subquery_1' in subquery source
下面是我试图实现的嵌套子查询。在标准 SQL 中镜像此查询工作正常。但是我对HQL不是很熟悉,不知从何入手。
LEFT OUTER JOIN
(SELECT smz_au.mid,
smz_au.oid,
Subquery_1.oc
Subquery_1.ri,
Subquery_1.riil,
Subquery_1.rrc
FROM
smz_au
LEFT OUTER JOIN
(SELECT smz_au_1.oid
smz_au_1.oc,
smz_au_1.ri,
smz_au_1.riil,
smz_au_1.rrc
FROM smz_au smz_au_1
WHERE (smz_au_1.initial_status = 'Allocated')
) Subquery_1 ON (smz_au.oid = Subquery_1.oid)
WHERE (smz_au.initial_status = 'Loan Start')
) Subquery ON (smz_ls.mid = Subquery.mid)
select 中 Subquery_1.ri,
之前的 Subquery_1.oc
之后缺少逗号。
Subquery_1.oc --whithout comma here, Subquery_1.ri is an alias of Subquery_1.oc column
Subquery_1.ri, --and alias should be without dot '.'
--this is why you got " mismatched input '.' "