¿Cómo puedo suprimir la salida del encabezado de columna para una sola declaración SQL?


113

Estoy ejecutando algunas declaraciones SQL por lotes (usando el mysqlbinario de la línea de comandos). Quiero que una de mis varias declaraciones SELECT no imprima los encabezados de columna, solo los registros seleccionados. es posible?

Respuestas:


247

Invoque mysql con la opción -N(el alias de -Nes --skip-column-names):

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

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

Gracias a ErichBSchulz por señalar el alias -N.

Para eliminar la cuadrícula (las líneas verticales y horizontales) alrededor de los resultados, use -s( --silent). Las columnas están separadas por un TABcarácter.

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

id  name
1   pete
2   john
3   mike

Para generar los datos sin encabezados y sin cuadrícula, simplemente use -sy -N.

mysql -sN ...

3
el atajo en-N
ErichBSchulz

4
-sN funcionó bien para mí para asignar la salida a una variable en un script: TABLES=$(mysql -sN -u $DB_USER -p$DB_PASS...
Michael J

5
Esto se aplica a toda la sesión, no solo a una sola instrucción SQL. Oracle SQLPlus tiene set feedback ony set feedback offque se puede utilizar en cualquier lugar de una sesión. ¿MySQL tiene un equivalente? Parece que eso es lo que OP estaba buscando.
codeforester

solo un breve comentario, simplifique usando select * from testdb.names; sin 'uso' explícito.
fcm

15

Puedes fingirlo así:

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

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

Error: Type mismatch: expected type string, but goterror con alias vacío
QkiZ

Parece que ese error proviene de MySQL Workbench, no de MySQL. De todos modos, también puede usar un solo espacio en blanco en lugar de una cadena vacía, y eso parece funcionar en MySQL Workbench:select column1 as ' ', column2 as ' ' from some_table;
Tom Warfield
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.