Параметры форматирования

Параметры форматирования

/add=<header>=<value | function>[;...]

Используйте эту опцию, чтобы добавить новые выходные столбцы с фиксированными значениями.

Например, AAPL.json содержит следующие столбцы:

Adjclose;Close;High;Low;Open;Timestamp;Volume

Выходной файл data.csv должен содержать следующие столбцы:

Symbol;Timestamp;Open;High;Low;Close;Volume;Adjclose

Вы можете использовать следующую команду, чтобы добавить столбец Symbol:

gsqlcmd convert AAPL.json data.csv /append /add=Symbol=AAPL

Вы можете использовать функции для использования имени файла как значения:

gsqlcmd convert AAPL.json data.csv /append /add=Symbol=FileNameWithoutExtension()

Таким образом, функции позволяют конвертировать несколько входных файлов одной командой, например

gsqlcmd convert *.json data.csv /append /add=Symbol=FileNameWithoutExtension()

gsqlcmd включает целый ряд функций для простого решения типичных задач.

/addRowNum

Используйте эту опцию, чтобы добавить столбец с номером строки к выходным данным.

Укажите опцию /hasRowNum, чтобы использовать существующий первый столбец.

Используйте /addRowNum=false, чтобы удалить столбец с номером строки.

Используйте опцию /rowNumBase, чтобы задать начальный номер строки.

Например:

/addRowNum /rowNumBase=1

/dateFormat=<format>

Используйте эту опцию, чтобы указать формат значений даты.

Например:

/dateFormat=yyyy-MM-dd

/dateTimeFormat=<format>

Используйте эту опцию, чтобы указать формат значений даты и времени.

См. https://learn.microsoft.com/en-us/dotnet/api/system.datetime.tostring?view=net-6.0 о форматных строках.

Используйте двойные кавычки, чтобы указать форматы, включающие пробелы. Например:

"/dateTimeFormat=yyyy-MM-dd hh:mm:ss"

/escapeChar=<char>

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

Например:

/escapeChar="

Значение по умолчанию - двойная кавычка. Укажите пустое значение, чтобы отключить экранирование.

См. https://datatracker.ietf.org/doc/html/rfc4180 о формате CSV.

/lowerCase

Используйте эту опцию, чтобы преобразовать имена полей в строчные буквы в режимах make-fmt и make-create.

/noBOM

Используйте эту опцию, чтобы запретить добавление заголовка Unicode BOM к выходным данным.

/noHeaders

Используйте эту опцию, чтобы подавить вывод заголовков столбцов.

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

gsqlcmd select "SELECT loc FROM https://www.savetodb.com/sitemap.xml" /noHeaders

/noRound

Используйте эту опцию, чтобы выводить числа со всеми десятичными знаками как в источнике.

Без этой опции gsqlcmd округляет числа до двух или четырех знаков после запятой, если это не приводит к потере точности.

/outputCodePage=<codepage>

Используйте эту опцию, чтобы определить кодовую страницу выходного файла.

Например:

/outputCodePage=65001

/outputCulture=<name>

Используйте эту опцию, чтобы определить культуру вывода, содержащую правила для форматирования значений даты и времени и чисел.

Например:

/outputCulture=en-GB

/[outputFormat=]asTxt | asText | asCsv | asHtm | asHtml | asXml | asJson

Используйте эти параметры, чтобы указать выходной формат.

Этот параметр можно опустить, если указать имя выходного файла с расширением *.txt, *.csv, *.htm, *.html, *.xml или *.json.

/[output]separator=<separator> | tab

Используйте эту опцию, чтобы определить разделитель выходного CSV.

Например:

gsqlcmd select data.xml data.csv /separator=,

Разделителем по умолчанию является точка с запятой.

Используйте значение Tab, чтобы указать символ табуляции.

/quoteChar=<char>

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

Например:

/quoteChar="

Значение по умолчанию - двойная кавычка. Укажите пустое значение, чтобы отключить обрамление.

См. https://datatracker.ietf.org/doc/html/rfc4180 о формате CSV.

/relative

Используйте эту опцию, чтобы удалить абсолютные пути в запросах BULK, сгенерированных в режиме make-bulk.

Microsoft SQL Server требует абсолютных путей.

Однако вы можете использовать относительные пути, так как gsqlcmd расширяет относительные пути до абсолютных на лету.

/rowNumBase=<integer>

Используйте эту опцию, чтобы определить номер первой строки вывода.

Используйте опцию /addRowNum, чтобы добавить в вывод столбец с номером строки.

Например:

/addRowNum /rowNumBase=1

Значение по умолчанию - 0.

/rowValues

Используйте эту опцию, чтобы вывести данные XML и JSON в пары "ключ-значение".

Например, документ XML имеет следующее содержимое:

<?xml version="1.0"?>
<root>
  <row id="1">
    <col1>Value11</col1>
    <col2>Value12</col2>
  </row>
  <row id="2">
    <col1>Value21</col1>
    <col2>Value22</col2>
  </row>
</root>

Обычная команда возвращает следующий результат:

gsqlcmd select test.xml

id col1    col2
 1 Value11 Value12
 2 Value21 Value22

Команда с параметром /rowValues ??возвратит следующий результат:

gsqlcmd select test.xml /rowValues

Key             Value
root.row.0.#id  1
root.row.0.col1 Value11
root.row.0.col2 Value12
root.row.1.#id  2
root.row.1.col1 Value21
root.row.1.col2 Value22

/timeFormat=<format>

Используйте эту опцию, чтобы указать формат значений времени.

Например:

/timeFormat=hh:mm:ss

См. https://learn.microsoft.com/en-us/dotnet/api/system.datetime.tostring?view=net-6.0 о форматных строках.

/upperCase

Используйте эту опцию, чтобы преобразовать имена полей в заглавные буквы в режимах make-fmt и make-create.

/xmlRoot=<name>

Используйте эту опцию, чтобы изменить имя корневого узла в выводе XML.

/xmlRow=<name>

Используйте эту опцию, чтобы изменить имя узла строки в выводе XML.