2012-12-18 18 views
25

Có cách nào để tôi có thể nhận được tổng số bảng trong cơ sở dữ liệu Postgresql không? Phiên bản postgresql tôi đang sử dụng là PostgreSQL 8.4.14.Làm thế nào để có được tổng số bảng trong postgresql?

+0

Để khám phá những gì đang xảy ra trong chỉ có một cơ sở dữ liệu Tôi thường sử dụng '\ d'. Với điều này, bạn có thể liệt kê tổng số các bảng, khung nhìn và các chuỗi. – omar

Trả lời

30
select count(*) 
from information_schema.tables; 

Hoặc nếu bạn muốn tìm số bảng chỉ cho một lược đồ cụ thể:

select count(*) 
from information_schema.tables 
where table_schema = 'public'; 
+0

Điều gì sẽ xảy ra nếu chúng ta muốn đếm số lượng bảng? Tôi biết chúng ta có thể thấy số nhưng tôi muốn sử dụng số này trong một câu lệnh sql? – bukowski

13

Chỉ cố gắng tìm kiếm trong pg_stat ... bảng hoặc information_schema bạn có thể tìm thấy thông tin rất hữu ích về cơ sở dữ liệu của bạn.
Ví dụ:

select * from pg_stat_user_tables ; 
select count(*) from pg_stat_user_tables ; 
select * from pg_stat_all_tables ; 
-3
select Count(*) from sys.tables 
+2

Điều này sẽ làm việc cho SQL Server, phải không? Không phải PostgreSQL. – xnakos

+1

Điều này không hoạt động trên Postgres. –

Các vấn đề liên quan