2017-08-30 146 views
1

所以我有SQL文本額外撇號

CASE WHEN LOWER([F16]) = '[email protected]' THEN 'Matt' 
     WHEN LOWER([F16]) = '''[email protected]' THEN 'Matt' 

的這個塊什麼是我們這個值檢查兩次?是不是因爲我的SSIS軟件包將excel書中的值轉儲到了tbl,我們試圖穿過有時出類拔萃的隨機字符?

我的問題是「爲什麼第二'WHEN'裏面有額外的撇號?」

+0

我們應該怎麼知道你的SQL爲什麼要檢查兩次?你看過你的數據,看看爲什麼這是必要的嗎? –

+0

@KenWhite我會認爲我的問題很清楚,但是我已經編輯過,所以更清楚。 –

回答

2

如果您的數據是從Excel中導入的,則可能會出現該檢查以允許在查看工作簿時不可見的前導滴答。

Excel將單引號解釋爲文本字段的標記。如果輸入的文本會被解釋爲某種其他類型,則添加單引號可防止Excel推斷該類型。

但是,此引用仍然是單元格中數據的一部分。解釋可能包含引號的數據需要爲其添加明確的處理。

+0

謝謝,那就是我在想什麼,但很高興能得到證實 –