sql - 编译语句时出错:FAILED: SemanticException [Error 10002] - MAKE SELECT WITH MAX ON HIVE
问题描述
我正在尝试执行此选择以仅返回最近插入的记录
我正在使用 HIVE
co_junta_comer 和 co_informacao 可以重复,但需要最近的记录
select *
from reference_data.reference_data_novajunta A
where A.ts_inclusao IN
(select max(row2.ts_inclusao)
from reference_data.reference_data_novajunta row2
where A.co_junta_comer = row2.co_junta_comer
AND row2.co_informacao = A.co_informacao)
我收到错误
Error while compiling statement: FAILED: SemanticException [Error 10002]: line 4:28 Invalid column reference 'co_junta_comer'`
解决方案
使用row_number()
:
select rdn.*
from (select rdn.*,
row_number() over (partition by co_junta_comer, co_informacao order by ts_inclusao desc) as seqnum
from reference_data.reference_data_novajunta rdn
) rdn
where seqnum = 1;
推荐阅读
- angular - Angular 5,如何为 http 调用加锁
- laravel - 如何在 docker 容器中使用 php artisan serve?
- php - 将 HTML 响应转换为 PHP 数组
- .net - .NET Regex - 匹配后获取字符串
- python - UnicodeDecodeError:“utf-8”编解码器无法解码位置 0 中的字节 0xd1:无效的继续字节
- wordpress - 在 WooCommerce 中出现错误 401(身份验证错误)
- java - 多次截图程序
- html - 可扩展文本的标题文本大小
- tsql - 如何在 SQL Server 中拒绝用户组几个小时的写入权限
- react-native - 如何使用 react-native-admob 显示 admob 插页式广告?