1
爲什麼SQL Server認爲CHAR(49)和CHAR(185)是相同的?爲什麼SQL Server認爲CHAR(49)和CHAR(185)是相同的?
當1被輸入到任何一種類型的NVARCHAR或TEXT的列時,它把它看作是既CHAR(49)(一)和CHAR(185)(上標上)
實施例的數據:
SELECT CAST('1111' AS TEXT) AS col1 INTO CharTest;
選擇腳本:
SELECT * FROM CharTest WHERE col1 LIKE '%'+CHAR(49)+'%';
SELECT * FROM CharTest WHERE col1 LIKE '%'+CHAR(185)+'%';
兩個語句返回:1111
我測試了腳本。它完美的工作,唯一的一個腳本檢索1111,而另一個沒有。 –
它是你有效的排序規則嗎? – Cato
您的示例數據與問題描述不匹配! ,選擇1111它意味着dataType是'int',所以通過正確的例子'NVARCHAR'或'TEXT'來更新你的問題。 –