Jawaban:
Anda harus bisa lari saja select * from information_schema.tables
untuk mendapatkan daftar setiap tabel yang dikelola oleh Postgres untuk database tertentu.
Anda juga dapat menambahkan where table_schema = 'information_schema'
untuk melihat hanya tabel dalam skema informasi.
Untuk daftar tabel Anda gunakan:
SELECT table_name FROM information_schema.tables WHERE table_schema='public'
Ini hanya akan mencantumkan tabel yang Anda buat.
\dt information_schema.
dari dalam psql, harus baik-baik saja.
The "\ z" COMMAND juga merupakan cara yang baik untuk daftar tabel ketika dalam sesi psql interaktif.
misalnya.
# psql -d mcdb -U admin -p 5555
mcdb=# /z
Access privileges for database "mcdb"
Schema | Name | Type | Access privileges
--------+--------------------------------+----------+---------------------------------------
public | activities | table |
public | activities_id_seq | sequence |
public | activities_users_mapping | table |
[..]
public | v_schedules_2 | view | {admin=arwdxt/admin,viewuser=r/admin}
public | v_systems | view |
public | vapp_backups | table |
public | vm_client | table |
public | vm_datastore | table |
public | vmentity_hle_map | table |
(148 rows)
Untuk skema pribadi 'xxx'
di postgresql:
SELECT table_name FROM information_schema.tables
WHERE table_schema = 'xxx' AND table_type = 'BASE TABLE'
Tanpa table_type = 'BASE TABLE'
, Anda akan membuat daftar tabel dan tampilan
1. dapatkan semua tabel dan tampilan dari information_schema.tables, termasuk tabel information_schema dan pg_catalog.
select * from information_schema.tables
2. dapatkan tabel dan tampilan milik skema tertentu
select * from information_schema.tables
where table_schema not in ('information_schema', 'pg_catalog')
3. dapatkan tabel saja (hampir \ dt)
select * from information_schema.tables
where table_schema not in ('information_schema', 'pg_catalog') and
table_type = 'BASE TABLE'
where table_schema not in ('information_schema', 'pg_catalog')
?
Jika Anda ingin kueri satu-baris yang cepat dan kotor:
select * from information_schema.tables
Anda bisa menjalankannya langsung di alat Kueri tanpa harus membuka psql.
(Posting lain menyarankan pertanyaan information_schema yang lebih spesifik dan bagus, tetapi sebagai yang baru, saya menemukan permintaan satu-baris ini membantu saya memahami tabel)