Параметры форматирования
/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.