Sử dụng PATINDEX và một collation trường hợp nhạy cảm để tìm kiếm chữ hoa chữ cái trong một chuỗi Tôi nhận thấy điều này đã không được năng suất kết quả mong muốn:Phạm vi mẫu ký tự đại diện phù hợp với hành vi với trường hợp nhạy cảm collations
-- returns 1
SELECT PATINDEX('%[A-Z]%'
, 'abCde' COLLATE SQL_Latin1_General_Cp1_CS_AS);
tuy nhiên, chỉ định mọi chữ cái, AZ, có:
-- returns 3
SELECT PATINDEX('%[ABCDEFGHIJKLMNOPQRSTUVWXYZ]%'
, 'abCde' COLLATE SQL_Latin1_General_Cp1_CS_AS);
Hiểu biết của tôi về việc sử dụng một phạm vi trong trường hợp đầu tiên không đúng? Tại sao hành vi như thế này?
Cảm ơn cho điều này, tôi cần phải giải nén hàng bắt đầu với chữ viết hoa chỉ chữ: PATINDEX ('[ABCDEFGHIJKLMNOPQRSTUVWXYZ]%', [TÊN] đối chiếu SQL_Latin1_General_Cp1_CS_AS) = 1 –