【发布时间】:2017-12-02 01:46:58
【问题描述】:
我们正在从 Oracle 迁移到 Hadoop,我正在尝试将以下用 Oracle sql 编写的查询转换为 Impala sql:
CASE WHEN UPPER(table1.ACC_NBR) = LOWER(table1.ACC_NBR) THEN
SUBSTR(table1.ACC_NBR,5,1)||'-'||SUBSTR(table1.ACC_NBR,8,2)||'-'||
SUBSTR(table1.ACC_NBR,10,3)||'-'||SUBSTR(table1.ACC_NBR,13,6)
ELSE
SUBSTR(table1.ACC_NBR,5,1)||'-'||SUBSTR(table1.ACC_NBR,6,2)||'-' ||
SUBSTR(table1.ACC_NBR,10,2)||'-'||SUBSTR(table1.ACC_NBR,13,6)
END
我在业务对象宇宙设计工具中使用此查询,它给了我错误
SUBSTR(table1.ACC_NBR,5,1) 或 ||'-'||是一个布尔预期字符串
。有人可以看看查询,看看有什么遗漏或多余的吗?
提前致谢。
【问题讨论】: