Teradata - 查找具有特殊占位符字符的行
Teradata - Finding Rows with Special Placeholder Characters
我在 Teradata 中有一个 table,它从多个来源积累产品,并将它们放在一个大的 table 中。其中一些源是使用 UTF-8 源设置的,但在它们的目标上是拉丁编码。这导致一些记录插入带有白色问号的黑色菱形。我将它们合并成的 table 是 UNICODE,但我希望能够标记包含这些占位符字符的行。我尝试过将 Unicode 转为拉丁语函数,但这也会对合法的非拉丁语 Unicode 字符(如外语)做出反应。
These are the characters I'm after
有什么方法可以识别和标记包含此特定占位符字符的记录?任何信息将不胜感激!
您可以使用 CHAR2HEXINT
函数来验证,但这似乎是错误替换字符(x'1A' 拉丁语或 U+FFFD Unicode)。找到特定值的技巧是生成比较值。
POSITION(CHR(26) IN Latin_Column) > 0
或
POSITION(TRANSLATE(CHR(26) USING LATIN_TO_UNICODE WITH ERROR) IN Unicode_Column) > 0
我在 Teradata 中有一个 table,它从多个来源积累产品,并将它们放在一个大的 table 中。其中一些源是使用 UTF-8 源设置的,但在它们的目标上是拉丁编码。这导致一些记录插入带有白色问号的黑色菱形。我将它们合并成的 table 是 UNICODE,但我希望能够标记包含这些占位符字符的行。我尝试过将 Unicode 转为拉丁语函数,但这也会对合法的非拉丁语 Unicode 字符(如外语)做出反应。
These are the characters I'm after
有什么方法可以识别和标记包含此特定占位符字符的记录?任何信息将不胜感激!
您可以使用 CHAR2HEXINT
函数来验证,但这似乎是错误替换字符(x'1A' 拉丁语或 U+FFFD Unicode)。找到特定值的技巧是生成比较值。
POSITION(CHR(26) IN Latin_Column) > 0
或
POSITION(TRANSLATE(CHR(26) USING LATIN_TO_UNICODE WITH ERROR) IN Unicode_Column) > 0