查询不在Impala中工作
问题描述:
(SELECT CONCAT('ABCDE',SUM((SELECT MAX(id) FROM optigo_data.admin_userdetails LIMIT 1)+1)))
上面是在Mysql中工作,但它不在Impala/Hive中工作,请帮助我。查询不在Impala中工作
Error: sub query is not supported.
答
此错误的原因是Impala仅支持FROM和WHERE子句中的子查询。 我认为这将是黑斑羚相当于:
SELECT
CONCAT('ABCDE',cast(SUM(t.value+1) as string))
from
(SELECT MAX(cast(id as int)) as value
FROM optigo_data.admin_userdetails LIMIT 1) as t
但是看着查询假设你的目标是产生含有最高ID + 1的字符串,一个简单的解决办法是:
SELECT
CONCAT('ABCDE',cast(MAX(cast(id as int)+1) as string))
FROM optigo_data.admin_userdetails
如果我的假设不正确,请纠正我。如果id
已经是数字格式,则可以删除cast as int
。
感谢它的工作! –