【发布时间】:2020-12-12 10:53:36
【问题描述】:
有一个包含逗号分隔值的表格列,例如:
abc321,rd512,spwewr
我需要提取从用户定义模式开始的子字符串。 示例:
Input Pattern | Expected result
abc abc321
r rd512
spwe spwewr
b NULL
Druid SQL 中的以下失败:
SELECT SUBSTRING('abc321,rd512,spwewr', POSITION('r' IN 'abc321,rd512,spwewr'), 2)
这是已知的德鲁伊错误: “子字符串运算符转换器不能正确处理非常量文字”:
https://issues.apache.org/jira/browse/CALCITE-2226
我认为要走的路是使用 REGEXP_EXTRACT() 或 REGEXP_LIKE() 但我无法弄清楚具体的语法。
【问题讨论】: