Крючки в названии столбика

К сожалению, мне нужно взять файл Excel, содержащий имя столбца => endOfWork [4]

Затем я хочу экспортировать его с помощью SQL-запроса. Я переименовываю свои столбцы и не могу поставить скобки по запросу:

TMP_TBL_Sedex_modif.Champ98 AS startOfWork [23]

Как поставить квадратные скобки в мой SQL-запрос?

При чем здесь SQL Server или MySQL?

DavidG 31.10.2018 11:33

Сервер SQl <> MySQL. Что вы используете В самом деле?

Larnu 31.10.2018 11:33

я использую Sql Server

Kenpachi 31.10.2018 11:35
0
3
55
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Квадратные скобки используются в SQL Server как символы для ограничения Идентификаторы с разделителями, которые могут содержать символы, не разрешенные в регулярных идентификаторах (а также могут быть ключевыми словами SQL).

Если вы хотите использовать квадратные скобки в имени, вы должны убрать одну из них:

select 1 as [startOfWork [23]]]

В качестве альтернативы, предполагая настройки по умолчанию, вы можете вместо этого использовать двойные кавычки в качестве разделителя:

select 1 as "startOfWork [23]"

Или (поскольку это псевдоним, а не идентификатор) просто select 1 as 'startOfWork [23]', который должен работать нормально независимо от настроек сервера ...

Zohar Peled 31.10.2018 11:49

@ZoharPeled - квадратные скобки работают нормально независимо от настроек. Я не поклонник формы одинарных кавычек. Это «неуместное» смешение. Псевдонимы принадлежат тому же «пространству имен», что и другие идентификаторы, вы (IMO) не должны помещать строковые литералы, когда вам это нужно.

Damien_The_Unbeliever 31.10.2018 11:57

Да, квадратные скобки будут работать при любых настройках, хотя в данном случае это выглядит довольно громоздко, поэтому лично мне это решение не очень нравится. Я не думаю, что использование строкового литерала в качестве псевдонима обязательно плохо, но я понимаю вашу точку зрения.

Zohar Peled 31.10.2018 12:01

Другие вопросы по теме