2009-01-07 17 views
4

我想清理一些電子郵件地址在sql服務器。我可以看到有問題的郵件的例子,它們看起來像這樣:我可以看到電子郵件地址的空間,但SQL SERVER不能?

abc123 @xyz.com 

然而,當我嘗試運行一個查詢找到這樣的人,說有:

NOT CHARINDEX(' ',LTRIM(RTRIM([Email_Address]))) = 0 

Email_Address like '% %' 

我的查詢返回沒有結果。

任何想法是什麼給?

感謝您的快速解答。這是一個非破壞性的空間 - Char(160)。 sql ASCII()函數可以方便地找到它。

回答

10

這絕對是一個空間嗎?或者它可能是一些其他非打印字符?

8

兩種可能性出現:

  1. 它不是一個空格字符。檢查它是否有TAB或非打印ASCII字符。

  2. 這裏什麼也沒有,而且你的顯示字體很奇怪。

3

它可能不是來自您的空間欄的實際空間。我會說嘗試將結果轉儲到文本文件,用記事本打開它,從記事本複製並粘貼「空間」。

我希望他們不會改變記事本的原因之一,缺乏對更高級角色的支持可以讓你做這樣的事情。

+0

是的,SQL查看器可以很奇怪地呈現文本,以確保固定寬度的可讀性,使字符看起來好像是半渲染或額外的空間。 – Kezzer 2009-01-07 15:49:14

3

我會將其轉儲到Vim或UltraEdit或[插入選擇的文本編輯器]並在十六進制看它。然後你可以很容易地判斷這是一個空間角色還是別的什麼東西。

相關問題