Получение имен столбцов с включенной опцией sqsh -m bcp? - PullRequest
2 голосов
/ 20 февраля 2010

Когда я использую sqsh в интерактивном режиме, иногда мне нравится выполнять мой запрос следующим образом, чтобы я мог получить его в хорошем CSV-файле:

1> выбрать * из таблицы, где Бла Бла =

2> go -m bcp> / Файл / имя / здесь

Единственная проблема, с которой я столкнулся, заключается в том, что использование опции -m bcp не дает мне имена столбцов в выводе. Есть идеи, как получить эти имена столбцов «чистым» способом?

Ответы [ 3 ]

3 голосов
/ 26 марта 2010

В sqsh есть режим отображения CSV, вы пробовали это

0 голосов
/ 31 августа 2017

Помимо стиля csv, упомянутого в других ответах, стиль horiz по умолчанию в сочетании с соответствующим значением в colsep (не bcp_colsep) будет производить раздельный вывод с именами столбцов.

1> \set colsep="|"

1> select * from Table where Blah=Blah
2> go
|heading1|heading2|
|--------|--------|
|row1    |col2    |
|row2    |col2    |

Однако значения столбцов дополняются, и печатается как подчеркивание заголовка, так и начальный разделитель столбцов перед первым столбцом. Например, их можно удалить с помощью awk. Возможно, нет панацеи ...

Символ табуляции в качестве разделителя столбцов должен вставляться буквально с помощью Ctrl V - Tab , если не используется недавний sqsh (информация по этому вопросу : Какие есть варианты для стиля sqsh "csv" (или в любом случае, чтобы разделить табуляцией) ).

0 голосов
/ 14 декабря 2016

Попробуйте:

1> select * from Table where Blah=Blah
2> go -m csv > /file/name/here 
...