Я надеюсь сравнивать два varchars в SQL, можно было бы быть чем-то как Cafe
и другой Café
есть ли путь в SQL, который позволит двум значениям быть сравненными. Например:
SELECT *
FROM Venue
WHERE Name Like '%cafe%'
Таким образом, если существует место проведения с именем Big Bobs Café Extraordinaire
это было бы включено в набор результатов?
Чувствительный к диакритическим знакам и Не чувствительный к диакритическим знакам поиск может быть Доном при помощи Latin1_general_CI_AI
Здесь AI
, для Не чувствительного к диакритическим знакам и AS
для Чувствительного к диакритическим знакам т.е., CafГ© и , Кафе является тем же, если Не чувствительный к диакритическим знакам.
В ниже запроса Latin1_general_CI_AI
может быть, разламывают на следующие части.
latin1
делает строки обработки сервера с помощью латыни набора символов 1, в основном ASCII
, CI указывает нечувствительный к регистру, таким образом, "ABC" равняется "abc".
Ваш запрос должен быть следующие:
SELECT * FROM Venue WHERE Name COLLATE Latin1_general_CI_AI Like '%cafe%' COLLATE Latin1_general_CI_AI
Ожидаемый Результат следующие:
Id name
1 Café
2 Cafe
если СОПОСТАВЛЕНИЕ SQL_Latin1_General_CP1_CS_AS = СОПОСТАВЛЕНИЕ ВЫБОРА SQL_Latin1_General_CP1_CS_AS N'Yes ЕЩЕ ВЫБИРАЕТ N'No'