sql - Hive 查询失败
问题描述
我已经将配置单元查询设置为每天在作业上运行,今天是第一天运行它对我来说失败了。从我的设置来看,我没有看到我在哪里出错了。
fun getFlightStatus(date: LocalDate, flightstatuses: List< flightstatus>): Set<Alert> {
val flightstatusesString = flightstatuses.joinToString(prefix = "(", postfix = ")", transform = { "'$it'" })
val query =
"""select passengerID, flightstatus, partition_date from(
|select distinct $flightTable.passengerID, $flightTable.flightstatus, $flightTable.partition_date
|from $flightTable
|where $flightTable.flightstatus in $flightstatusesString and $flightTable.partition_date = Date('$date')
|)""".trimMargin()
return hiveTemplate.execute(customCallback(query) { resultSet -> resultSet.toAlert() })
.also { logger.info("<<< flights.getFlightStatus($date, $statuses)") }.toSet()
}
解决方案
Hive 中的子查询应该有一个别名。
select ... from (select ....) s --here s is an alias
推荐阅读
- c# - StreamWriter Encoding.Default 使用不同的编码?
- iis - 通过 wfastcgi 将烧瓶部署到 IIS,日志在蓝图中不起作用
- c# - 无法使用c#将数据从excel文件复制到另一个文件
- azure - Azure AD 是否与 GCP/GKE 集成以允许 SSO?
- java - 如何从 html 表中检索数据并将其发送到另一个 jsp 页面?
- sharepoint - Sharepoint 不是受支持的样式表 MIME 类型
- sql - 如何在联合列 SQL 上使用 MIN
- ionic-framework - 如何将聊天消息存储到离子存储中?
- python - 了解条件正则表达式 python 中的 else 路径如何工作
- php - SQLSTATE[42S02] 说找不到基表或视图时出错 1146