Я использую MS SQL Server 2005 (9.0.4035) и пытаюсь найти строки, содержащие одинаковые данные, в поле nvarchar (4000). Поле содержит xml с квадратными скобками, открывающими и закрывающими.
Вот пример данных:
DataID Data
1 1
2 1
3 2]
4 2]
5 3 [
6 3 [
Используя оператор like, я ожидал получить 3 совпадающие пары, но моя проблема в том, что строки 5 и 6 не совпадают друг с другом, я только получаю обратно, что строки 1 и 2 совпадают, а 3 и 4 совпадают.
Я знаю, что в MS SQL 2005 добавлена поддержка регулярных выражений в запросах, но я не ожидал, что они будут оценивать полевые данные как регулярные выражения, что, по-моему, и делает. Есть ли режим, который мне нужно включить, чтобы получить правильные результаты?
Любая помощь приветствуется,
Райан
Редактировать: Добавлен SQL-оператор:
Выберите t1.DataID, t2.DataID из TestTable t1, TestTable t2
Где t1.DataID <> t2.DataID
и t1.Data, как t2.Data
Редактировать: Ответ
Использование оператора «=» работает, но экранирование «[» - нет.