我需要在SQL Server 2008中的存儲過程中進行區分大小寫的比較,但無法解決如何實現它。存儲過程中區分大小寫的查詢
我曾嘗試下面的代碼:
Declare @andJob varchar(1)
select @andJob = (SELECT szUserdefined6 from inserted)
if @andJob like'y%'
begin
/* Do Stuff */
end
我需要在SQL Server 2008中的存儲過程中進行區分大小寫的比較,但無法解決如何實現它。存儲過程中區分大小寫的查詢
我曾嘗試下面的代碼:
Declare @andJob varchar(1)
select @andJob = (SELECT szUserdefined6 from inserted)
if @andJob like'y%'
begin
/* Do Stuff */
end
也許,聲明一個排序規則將完成這項工作。看看這兩個問題找到一個詳細的解釋:
SQL Case Sensitive String Compare
SQL server ignore case in a where expression
做這些答案的一個解決問題了嗎?
在網絡中搜索「排序順序」:字符串(CHAR,VARCHAR等)使用不同的排序順序進行存儲,默認排序順序是使用SQL Server中的設置。一些排序順序是區分大小寫的,有些則不區分大小寫。您有一臺使用區分大小寫的序列的服務器。請更改服務器設置,或者手動定義要在該表中的一個字段上使用的排序順序。但要謹慎混合/比較不同的序列,因爲它需要將一個序列翻譯爲另一個序列。 – MatBailie
我已將字段設置爲Latin1_General_CS_AI,這對查詢沒有影響。 – joebohen
也嘗試明確強制對'y%'進行排序。使用執行計劃來檢查是否有任何對話正在發生。 – MatBailie