teradata - Teradata,将字段拆分为几行使用 STRTOK_SPLIT_TO_TABLE和 <\b> 语法错误
问题描述
解决方案
您的语法混乱(您需要派生表或 CTE),STRTOK 拆分字符,而不是字符串(这些字符中的任何一个都会拆分,而不是序列'</b>'
)。
您需要 RegExp_split_to_table 和另一个 RegEx 来清理结果:
with t as
(
select id, CONTENT
from Audit
)
select id, TokenNum
,regexp_substr(Token, '.*<b>\K.*') -- trim everything up to '<b>'
FROM TABLE (RegExp_Split_To_Table(t.id, t.content, '<\/b>', 'i') -- split whenever '<\/b>' occurs
RETURNS ( id INT,
TokenNum INT,
Token VARCHAR(100) CHARACTER SET Unicode)
) AS dt
编辑:
关于9134错误:尝试增加结果TOKEN的长度。如果您的输入是 VarChar(35000),则它不能是 UNICODE -> 也更改为 LATIN。
推荐阅读
- php - 禁用特定用户角色的插件(贡献者和订阅者)
- r - 如何隐藏或禁用pickerInput中的一项选择多项
- javascript - ASP.NEt 侧边栏样式在单击时保持刷新
- r - tibble 上的 Dygraph 转换为 xts,带有 3001 系列
- javascript - chrome.storage.local.set 是否保证顺序/确定性
- javascript - 从 JavaScript 数组中获取随机值(单击按钮)
- macos - 如何在 Mac 终端上查找文件
- azure - Azure Cosmos DB 与 Firebase firestore 或 firebase 实时数据库相同吗?
- python - 为什么kafka-python消费者轮询总是只返回一条消息?(timeout_ms 行为)
- javascript - 如何允许使用 Javascript 在沙盒 iframe 中下载?