云数据库 GaussDB-COPY:示例

时间:2023-11-01 16:22:24

示例

 1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930313233
--将tpcds.ship_mode中的数据拷贝到/home/omm/ds_ship_mode.dat文件中。postgres=# COPY tpcds.ship_mode TO '/home/omm/ds_ship_mode.dat';--将tpcds.ship_mode 输出到stdout。postgres=# COPY tpcds.ship_mode TO stdout;--创建tpcds.ship_mode_t1表。postgres=# CREATE TABLE tpcds.ship_mode_t1(    SM_SHIP_MODE_SK           INTEGER               NOT NULL,    SM_SHIP_MODE_ID           CHAR(16)              NOT NULL,    SM_TYPE                   CHAR(30)                      ,    SM_CODE                   CHAR(10)                      ,    SM_CARRIER                CHAR(20)                      ,    SM_CONTRACT               CHAR(20))WITH (ORIENTATION = COLUMN,COMPRESSION=MIDDLE)DISTRIBUTE BY HASH(SM_SHIP_MODE_SK );--从stdin拷贝数据到表tpcds.ship_mode_t1。postgres=# COPY tpcds.ship_mode_t1 FROM stdin;--从/home/omm/ds_ship_mode.dat文件拷贝数据到表tpcds.ship_mode_t1。postgres=# COPY tpcds.ship_mode_t1 FROM '/home/omm/ds_ship_mode.dat';--从/home/omm/ds_ship_mode.dat文件拷贝数据到表tpcds.ship_mode_t1,使用参数如下:导入格式为TEXT(format 'text'),分隔符为'\t'(delimiter E'\t'),忽略多余列(ignore_extra_data 'true'),不指定转义(noescaping 'true')。postgres=# COPY tpcds.ship_mode_t1 FROM '/home/omm/ds_ship_mode.dat' WITH(format 'text', delimiter E'\t', ignore_extra_data 'true', noescaping 'true');--从/home/omm/ds_ship_mode.dat文件拷贝数据到表tpcds.ship_mode_t1,使用参数如下:导入格式为FIXED(FIXED),指定定长格式(FORMATTER(SM_SHIP_MODE_SK(0, 2), SM_SHIP_MODE_ID(2,16), SM_TYPE(18,30), SM_CODE(50,10), SM_CARRIER(61,20), SM_CONTRACT(82,20))),忽略多余列(ignore_extra_data),有数据头(header)。postgres=# COPY tpcds.ship_mode_t1 FROM '/home/omm/ds_ship_mode.dat' FIXED FORMATTER(SM_SHIP_MODE_SK(0, 2), SM_SHIP_MODE_ID(2,16), SM_TYPE(18,30), SM_CODE(50,10), SM_CARRIER(61,20), SM_CONTRACT(82,20)) header ignore_extra_data;--删除tpcds.ship_mode_t1。postgres=# DROP TABLE tpcds.ship_mode_t1;
support.huaweicloud.com/devg-opengauss/opengauss_devg_0533.html