更新时间:2023-03-08 GMT+08:00
如何查看表是行存还是列存?
表的存储方式由建表语句中的ORIENTATION参数控制,row表示行存,column表示列存。
查看已创建的表是行存还是列存,可通过表定义函数PG_GET_TABLEDEF查询。
如下orientation=column表示为列存表。
目前暂不支持通过ALTER TABLE语句修改ORIENTATION参数,即行存表和列存表无法直接进行转换。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
SELECT * FROM PG_GET_TABLEDEF('customer_t1'); pg_get_tabledef ----------------------------------------------------------------------------------- SET search_path = tpchobs; + CREATE TABLE customer_t1 ( + c_customer_sk integer, + c_customer_id character(5), + c_first_name character(6), + c_last_name character(8) + ) + WITH (orientation=column, compression=middle, colversion=2.0, enable_delta=false)+ DISTRIBUTE BY HASH(c_last_name) + TO GROUP group_version1; (1 row) |
父主题: 数据库使用