如何从明确分区的PostgreSQL
问题描述:
选择在Oracle,MySQL的,我可以从分区如何从明确分区的PostgreSQL
SELECT ... FROM ... PARTITION (...)
在SQL Server语法选择有点不同的划分,涉及的功能。
有没有办法在PostgreSQL中做到这一点?
谢谢!
答
PostgreSQL提供的partitioning到table inheritance。
分区是像任何其他表一样具有唯一名称的子表,因此您只需使用它们的名称直接从它们中选择。唯一的特例是用于父表:从父表中选择忽略子表的数据,则使用附加关键字ONLY
,如SELECT * FROM ONLY parent_table
中所示。从手动
例子:
CREATE TABLE measurement_y2006m02 (
CHECK (logdate >= DATE '2006-02-01' AND logdate < DATE '2006-03-01')
) INHERITS (measurement);
所以select * from measurement_y2006m02
将只从该分区中获取数据。
+0
谢谢,我实际上可以使用它。 – 2014-11-10 15:02:20
SELECT * FROM 产品 其中tableoid :: regclass的::文本= 'PRODUCT_A' – 2014-11-08 16:13:37
SELECT吨。* FROM 产品吨 JOIN的pg_class C ON c.oid = t.tableoid JOIN pg_namespace N于c.relnamespace = n.oid WHERE t.tableoid = 16411 – 2014-11-08 16:14:43