更新时间:2022-08-16 GMT+08:00

通过外表查询OBS上的数据

直接查询外表查看OBS上的数据

如果数据量较少,可直接使用SELECT查询外表,即可查看到OBS上的数据。

  1. 执行以下命令,则可以从外表查询数据。

    1
    SELECT * FROM product_info_ext_obs;
    

    查询结果显示与原始数据显示相同,则表示导入成功。查询结果的结尾将显示以下信息:

    (10 rows)

    通过外表查询到数据后,用户可以将数据插入数据库的普通表。

导入数据后查询数据

  1. GaussDB(DWS)数据库中,创建导入数据的目标表,用于存储导入的数据。

    该表的表结构必须与创建外表中创建的外表的表结构保持一致,即字段个数、字段类型要完全一致。

    例如,创建一个名为product_info的表,示例如下:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    DROP TABLE IF EXISTS product_info;
    
    CREATE TABLE product_info
    (
        product_price                integer        not null,
        product_id                   char(30)       not null,
        product_time                 date           ,
        product_level                char(10)       ,
        product_name                 varchar(200)   ,
        product_type1                varchar(20)    ,
        product_type2                char(10)       ,
        product_monthly_sales_cnt    integer        ,
        product_comment_time         date           ,
        product_comment_num          integer        ,
        product_comment_content      varchar(200)                   
    ) 
    with (
    orientation = column,
    compression=middle
    ) 
    DISTRIBUTE BY HASH (product_id);
    

  2. 执行“INSERT INTO .. SELECT ..”命令从外表导入数据到目标表。

    示例:

    1
    INSERT INTO product_info SELECT * FROM product_info_ext_obs;
    
    若出现以下类似信息,说明数据导入成功。
    INSERT 0 10

  3. 执行SELECT命令,查看从OBS导入到GaussDB(DWS)中的数据。

    1
    SELECT * FROM product_info;
    

    查询结果显示如原始数据中所示的数据,表示导入成功。查询结果的结尾将显示以下信息:

    (10 rows)