语法错误:尝试与Impala中的子字符串匹配时出现ON RIGHT

时间:2019-03-14 13:40:11

标签: sql substring impala

有人知道我为什么收到此错误吗?我在IMPALA中使用SQL,它将无法运行。在mem_register_hsty_view和transparent_services_summary_2018下有一个黄色下划线。

这是我的代码:

use sndbx_dx;

SELECT
    r.member_identifier,
    n.fst_nme
FROM mem_register_hsty_view n
JOIN transparency_services_summary_2018 r
    ON RIGHT(TRIM(r.member_identifier),4) = LEFT(n.fst_nme,4)
ORDER BY
    r.id_key,
    r.group_number,
    n.fst_nme;

这是错误:

  

AnalysisException:第1行中的语法错误:未定义:... ervices_summary_2018 r ON RIGHT(TRIM(r.member_identifi ... ^ ,NULL,替换,截断,真,标识符的原因:异常:语法错误

1 个答案:

答案 0 :(得分:0)

从当前的Impala documentation开始,用于从字符串的左侧或右侧获取一定数量字符的函数实际上分别为STRLEFTSTRRIGHT。将其应用于您当前的查询将给出:

SELECT
    r.member_identifier,
    n.fst_nme
FROM mem_register_hsty_view n
INNER JOIN transparency_services_summary_2018 r
    ON STRRIGHT(TRIM(r.member_identifier), 4) = STRLEFT(n.fst_nme, 4)
ORDER BY
    r.id_key,
    r.group_number,
    n.fst_nme;