我正在尝试清理sql server中的一些电子邮件地址。我可以看到有问题的电子邮件的示例,它们看起来像这样:
abc123 @xyz.com
但是,当我尝试运行查询来查找这些人时,请说:
NOT CHARINDEX(' ',LTRIM(RTRIM([Email_Address]))) = 0
或
Email_Address like '% %'
我的查询没有返回任何结果。
知道是什么给出了什么?
感谢您的快速解答。这是一个非破碎的空间 - Char(160)。 sql ASCII()函数派上用场就可以找到它。
答案 0 :(得分:10)
它绝对是一个空间还是其他非打印角色?
答案 1 :(得分:8)
有两种可能性:
它不是太空人物。检查它是否为TAB或非打印ASCII字符。
根本没有任何东西,你的显示字体很奇怪。
答案 2 :(得分:3)
它可能不是来自空格键的实际空间。我想说尝试将结果转储到文本文件,用记事本打开它,从记事本复制并粘贴“空格”。
我希望他们不改变记事本的原因之一是,缺乏对更高级字符的支持可以让你做这样的事情。
答案 3 :(得分:3)
我会把它转储到Vim或UltraEdit或[插入选择的文本编辑器]并以十六进制查看它。然后,您可以轻松判断这是空格字符还是其他内容。