You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle如何查询指定表分区数?pg_partitions对应系统视图是什么

Oracle分区数量查询及对应系统视图

等价系统视图

PostgreSQL中pg_partitions在Oracle里对应的是分区表相关的系统视图,根据权限和查询范围不同分为三类:

  • USER_TAB_PARTITIONS:存储当前登录用户拥有的所有分区表的分区信息,不需要额外权限
  • ALL_TAB_PARTITIONS:存储当前登录用户有权限访问的所有分区表的分区信息
  • DBA_TAB_PARTITIONS:存储全库所有分区表的分区信息,需要DBA权限才可访问

统计指定表分区数量的查询语句

注意Oracle表名默认存储为大写,如果你建表时使用双引号指定了小写名称,需要对应匹配大小写。

查询当前用户下指定表的分区数

SELECT COUNT(*) AS partition_count
FROM USER_TAB_PARTITIONS
WHERE TABLE_NAME = '你的表名';

查询指定用户下指定表的分区数(需要访问对应用户表的权限)

SELECT COUNT(*) AS partition_count
FROM ALL_TAB_PARTITIONS
WHERE TABLE_OWNER = '表所属的用户名'
  AND TABLE_NAME = '你的表名';

全库范围查询(需要DBA权限)

SELECT COUNT(*) AS partition_count
FROM DBA_TAB_PARTITIONS
WHERE OWNER = '表所属的用户名'
  AND TABLE_NAME = '你的表名';

补充说明

如果你使用的是复合分区(分区下嵌套子分区),需要统计子分区数量的话,可以替换上面视图为对应的USER_TAB_SUBPARTITIONS、ALL_TAB_SUBPARTITIONS、DBA_TAB_SUBPARTITIONS即可。

内容的提问来源于stack exchange,提问作者Damianos17

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 02:09:03