SHOW TABLES/COLUMNS – czyli jak wyświetlić wszystkie tablice i kolumny w bazie danych MySQL

W bazie danych mySQL możemy wyświetlić wszystkie dostępne tablice i kolumny na kilka sposobów. Spójrzmy na poniższe polecenia wraz z przykładami:

SHOW TABLES IN/FROM – wyświetli nam listę wszystkich tabel ze wskazanej bazy danych. Zarówno polecenie show tables in, jak i show tables from zwrócą dokładnie ten sam wynik – jednokolumnową tabelę z nazwami tabel w bazie danych.

show tables in nazwa_bazy;
show tables from nazwa_bazy;

Możemy oczywiście filtrować wynik powyższych zapytań, przy użyciu klauzuli like. Spójrzmy na przykłady:

show tables in nazwa_bazy like '%prac%';
show tables from nazwa_bazy like '%prac%';

Powyższe zapytania wyświetlą nam tabele z bazy danych, które w swojej nazwie zawierają frazę: prac, czyli np. praca, pracownicy, zapracowani itp.

SHOW COLUMNS IN/FROM – wyświetli nam listę wszystkich kolumn ze wskazanej tabeli. W tym przypadku polecenia show columns in oraz show columns from również zwrócą nam dokładnie ten sam wynik. Kiedy nie mamy wskazanej bazy danych na której pracujemy, nazwę tabeli należy poprzedzić nazwą bazy danych:

-- kiedy nie mamy wskazanej bazy danych
show columns in baza_danych.tabela;
show columns from baza_danych.tabela;

-- kiedy pracujemy na konkretnej bazie danych
show columns in tabela;
show columns from tabela;

Oczywiście możemy również filtrować wynik powyższych zapytań stosując klauzulę: like

-- kiedy nie mamy wskazanej bazy danych
show columns in baza_danych.tabela like '%kod%';
show columns from baza_danych.tabela like '%kod%';

-- kiedy pracujemy na konkretnej bazie danych
show columns in tabela like '%kod%';
show columns from tabela like '%kod%';

Powyższe zapytania zwrócą nam listę kolumn, które w swojej nazwie zawierają frazę: kod, czyli np. kod_klienta, kod_pocztowy, tajny_kod itp.