獲取數據庫中創建的分區數的最有效方法是什麼? 我正在使用* postgresq * l APi for C++。獲取postgresql數據庫中的分區數
2
A
回答
8
這是你可以選擇的表分區的所有名稱:
SELECT
nmsp_parent.nspname AS parent_schema,
parent.relname AS parent,
nmsp_child.nspname AS child,
child.relname AS child_schema
FROM pg_inherits
JOIN pg_class parent ON pg_inherits.inhparent = parent.oid
JOIN pg_class child ON pg_inherits.inhrelid = child.oid
JOIN pg_namespace nmsp_parent ON nmsp_parent.oid = parent.relnamespace
JOIN pg_namespace nmsp_child ON nmsp_child.oid = child.relnamespace
它可以用來計數以及:
SELECT
nmsp_parent.nspname AS parent_schema,
parent.relname AS parent,
COUNT(*)
FROM pg_inherits
JOIN pg_class parent ON pg_inherits.inhparent = parent.oid
JOIN pg_class child ON pg_inherits.inhrelid = child.oid
JOIN pg_namespace nmsp_parent ON nmsp_parent.oid = parent.relnamespace
JOIN pg_namespace nmsp_child ON nmsp_child.oid = child.relnamespace
GROUP BY
parent_schema,
parent;
0
這個問題是舊的。但a new question on dba.SE引用它,我覺得不得不添加一個更簡單的解決方案。
據的問題,到...
獲得在數據庫中創建的分區數:
使用inheritance和特定父表,我想:
SELECT count(*) AS partitions
FROM pg_inherits i
WHERE i.inhparent = 'my_schema.my_parent_tbl'::regclass;
有關dba.SE的相關答案更多的細節:
Get all partition names for a table
相關問題
- 1. PostgreSQL,獲取數據庫與Npgsql存在
- 2. 從數據庫獲取分層數據
- 3. 使用從數據庫的ADOB連接獲取數據以獲取數據時使用零錯誤的分區
- 4. 如何從Postgresql數據庫獲取數據到角度網站?
- 5. PostgreSQL的 - 備份和恢復與分區數據庫表
- 6. HQL獲取數據庫時區
- 7. PostgreSQL數據庫
- 8. 獲取數據庫中的數據?
- 9. 數據庫分區 - 分區列
- 10. 的PostgreSQL數據庫
- 11. 在PostgreSql中獲取數據庫所有者的名字
- 12. 如何在postgresql中獲取ubuntu數據庫的端口號?
- 13. postgresql-simple:獲取數據庫中表名的列表
- 14. Postgresql JDBC讀取時區數據
- 15. Ora中的數據庫分區11g
- 16. 數據庫分區解釋
- 17. 從數據庫獲取數據並分配數據
- 18. 從psql數據庫中獲取數據
- 19. 從moodle數據庫中獲取數據
- 20. 從數據庫中獲取數據
- 21. Android從數據庫中獲取數據
- 22. PDO從數據庫中獲取數據
- 23. 從數據庫中獲取數據。
- 24. CodeIgniter從數據庫中獲取數據
- 25. Django從數據庫中獲取數據
- 26. 從數據庫表中獲取數據
- 27. 從數據庫asp.net中獲取數據
- 28. 如何在postgresql中準確獲取數據庫大小?
- 29. INSERT跨數據庫PostgreSQL中
- 30. ,讓PostgreSQL數據庫
如何刪除最舊的分區? (首先創建的分區?) – Shay 2011-12-26 10:28:42
如果最低的OID是最舊的分區,則可以使用MIN(child.oid)來查找此分區。您可以使用它來查找此表的名稱和模式,並使用它來刪除此表。存儲過程使其更容易維護。 – 2011-12-26 11:27:21