【发布时间】:2014-07-01 14:31:02
【问题描述】:
我希望在 Teradata 中拆分字符串。
表格可能看起来像这样。
column1
hello:goodbye:afternoon
我正在尝试使用 SUBSTRING 和 INSTR 来提取特定的单词。所以,假设我想选择“再见”。我正在尝试以下查询。
SELECT SUBSTRING(a.column1 from index(a.column1,':')+1 for INSTR(a.column1,':',0,2))
FROM db.table as a
我收到以下错误。
SELECT Failed. [3707] Syntax error, expected something like ')' between the word 'INSTR' and '('
我不确定为什么会出现该错误。它让我可以使用 INDEX 来代替 INSTR 推断一个数字,所以我不确定为什么在我使用 INSTR 时它会这样。
【问题讨论】:
-
您使用的是哪个版本的 Teradata?我猜它是仅在 TD 14 中引入的,如果您使用的是旧版本,那么您需要获得相同的 UDF...
-
看起来我已经 13 岁了。那我该怎么做呢?
-
如果您可以安装 INSTR UDF,这是最简单的选择。否则,您可能不得不修改 POSITION...您可以从这里获取 UDF - downloads.teradata.com/download/extensibility/…
标签: sql database substring teradata