Добавление двойных кавычек в результаты SSMS 2014 (ответ необходим от исходного сообщения) - PullRequest
0 голосов
/ 17 мая 2018

Я перечитывал ответы на поставленный здесь вопрос:

Как получить выходные данные экспорта в "реальном" формате CSV в SQL Server Managment Studio?

Я считаю пост Joel Coohoern наиболее полезным, но у меня есть дополнительный вопрос.Моего представителя недостаточно, чтобы оставить комментарий, поэтому я задаю вопрос (надеюсь, это не слишком раздражает).

Но почему нужно использовать функцию замены, чтобы добавить в двойные кавычки уже существующее место?одинарная кавычка?Предлагаемая ниже формула:

SELECT '"' + REPLACE(CAST(column AS NVARCHAR(4000)), '"', '""') + '"' AS Header, ... FROM ...

Например, если в поле есть запись, которая была John "J, то приведенная выше формула сделает ее "John ""J".Почему так хочется, а не "John "J".Я просто пытаюсь понять использование функции замены в предыдущем посте.

Спасибо.

1 Ответ

0 голосов
/ 17 мая 2018

Двойная кавычка - это escape-символ.Поэтому, если они хотят буквально получить двойные кавычки, им нужно сбежать.

Легче понять, что вы создаете CSV с двумя строками, а затем открываете его в чем-то вроде Excel или в программе просмотра CSV.

"John "J", "test1"
"John ""J", "test2"

Вот скриншот того, как это выглядит в Excel и программе просмотра CSV

enter image description here

...