Pytanie W jaki sposób można pominąć wyjście nagłówka kolumny dla pojedynczej instrukcji SQL?


Wykonuję niektóre instrukcje SQL w serii (przy użyciu mysql plik binarny wiersza polecenia). Chcę, aby jedna z moich kilku instrukcji SELECT nie drukowała nagłówków kolumn, tylko wybrane rekordy. czy to możliwe?


76
2018-04-19 09:30


pochodzenie




Odpowiedzi:


Wywołaj mysql z -N (alias dla -N jest --skip-column-names) opcja:

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

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

Podziękowania dla ErichBSchulz za wskazanie -N alias.

Aby usunąć siatkę (linie pionowe i poziome) wokół wyniku użycia -s (--silent). Kolumny są oddzielone a TAB postać.

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

id  name
1   pete
2   john
3   mike

Aby wyprowadzić dane bez nagłówków i bez siatki, wystarczy użyć obu -s i -N.

mysql -sN ...

161
2018-01-02 16:17



skrót w -N - ErichBSchulz
-sN działało dobrze, aby przypisać wynik do zmiennej w skrypcie: TABLES=$(mysql -sN -u $DB_USER -p$DB_PASS... - Michael J
Dotyczy to całej sesji, a nie tylko pojedynczej instrukcji SQL. Oracle SQLPlus ma set feedback on i set feedback off które można wykorzystać w dowolnym miejscu sesji. Czy MySQL ma odpowiednik? Wygląda na to, czego szukał OP. - codeforester


Możesz to udawać w ten sposób:

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

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

15
2017-07-02 14:34



To nie jest zła sztuczka ... - einpoklum