如何从Teradata表的列中过滤非ASCII字符

时间:2018-10-31 06:24:26

标签: teradata teradata-sql-assistant

我想计算插入列中的特殊字符数(非ASCII)。 下面是我编写的代码,该代码无法按预期运行,

  SELECT count(BEST_ADDR_1) Inv_cnt
FROM DP_VEDW_SRC_MDB_NGN.ACCT_SUM_VIEW 
WHERE BEST_ADDR_1 NOT LIKE '%[^a-z0-9A-Z]%')

预先感谢

1 个答案:

答案 0 :(得分:0)

Teradata在LIKE中不支持字符范围。但您可以使用RegExp_Replace

删除非ASCII字符并检查剩余字符长度

SUM(Char_Length(RegExp_Replace(BEST_ADDR_1, '[a-z0-9]', '', 1, 0, 'i')))