2013-04-19 3 views
63

Я выполняю некоторые инструкции SQL в пакетном режиме (используя двоичный файл командной строки mysql). Я хочу, чтобы один из моих нескольких операторов SELECT не печатал заголовки столбцов, а только выбранные записи. Это возможно?Как я могу подавить вывод заголовка столбца для одного оператора SQL?

ответ

133

Invoke MySQL с опцией -N (псевдоним для -N является --skip-column-names):

mysql -N ... 
use testdb; 
select * from names; 

+------+-------+ 
| 1 | pete | 
| 2 | john | 
| 3 | mike | 
+------+-------+ 
3 rows in set (0.00 sec) 

Кредит ErichBSchulz для указывая -N псевдоним.

Чтобы удалить сетку (вертикальные и горизонтальные линии) вокруг результатов, используйте -s (--silent). Столбцы разделены символом TAB.

mysql -s ... 
use testdb; 
select * from names; 

id name 
1 pete 
2 john 
3 mike 

Для вывода данных без каких-либо заголовков и нет сетки просто использовать как -s и -N.

mysql -sN ... 
+2

ярлык в '-N' – ErichBSchulz

+2

-sN работал хорошо для меня, чтобы назначить выход на переменную в скрипте:' ТАБЛИЦЫ = $ (mysql -sN -u $ DB_USER -p $ DB_PASS' ... –

14

Вы можете фальсифицировать это так:

-- with column headings 
select column1, column2 from some_table; 

-- without column headings 
select column1 as '', column2 as '' from some_table; 
+1

Это не плохой трюк ... – einpoklum

 Смежные вопросы

  • Нет связанных вопросов^_^