T-SQL заменяет двойные кавычки - PullRequest
2 голосов
/ 10 августа 2009

У меня есть оператор t-sql, например Replace(field,'\''','\"'), потому что у меня два разных результата '' field1 '' и “field2”, но что, если я считаю эти два разных результата одинаковыми и хочу сгруппировать их? Я решил сгруппировать эти два, заменив первые двойные кавычки вторым стилем, но, несмотря на это, они не интерпретируются как один и тот же тип кавычек.

Что мне здесь не хватает ??

Отредактировано: я пытаюсь сгруппировать данные, где текст одинаков, но кавычки различаются, пользователь вводит две одинарные кавычки '' привет '' и одну двойную кавычку 'привет', если у меня есть эти две строки, которые я пытаюсь отобразить они как один, как "привет", поэтому, выполнив вышеприведенное утверждение, я думаю, что я смогу это сделать, но он не работает должным образом даже без слешей.

1 Ответ

6 голосов
/ 10 августа 2009

посмотрите на этот код:

DECLARE @X  varchar(20)
SET @X='''''Hello"'

PRINT @X
PRINT REPLACE(@X,'''''','"')
PRINT REPLACE(REPLACE(@X,'''''',''''),'"','''')

вот вывод:

''Hello"
"Hello"
'Hello'

SQL Server не экранирует кавычки с косой чертой, одна кавычка экранируется с другой одинарной кавычкой. Это напечатает одну цитату:

print ''''

это напечатает две одинарные кавычки:

print ''''''
...