我有一个分区表t,它使用列表分区
在列上分区我想查询所有分区及其相应的列值。
它与PLSQL Developer中的相同:当我查看此表的sql时,它显示所有分区,如:
partition DATA_20180522 values (20180522)
tablespace DMSCMDAT
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 8M
next 1M
minextents 1
maxextents unlimited
)
我搜索谷歌,但我找不到答案。
答案 0 :(得分:6)
要查找有关分区的信息,可以查询ALL_TAB_PARTITIONS视图:
SELECT *
FROM ALL_TAB_PARTITIONS
对于表上的大部分其他信息,您可以查询ALL_TABLES:
SELECT *
FROM ALL_TABLES
如果要重新创建表的源代码,则需要编写代码。 A good place to start is the code in this question at asktom.oracle.com
祝你好运。
答案 1 :(得分:3)
正如其他答案所示,您可以查看USER | ALL | DBA_TAB_PARTITIONS。但是如果你的目标是获得DDL,那么DBMS_METADATA.GET_DDL函数可能会更容易加载。使用SET_TRANSFORM_PARAM选项根据您的喜好定制输出。