zoukankan      html  css  js  c++  java
  • GP数据库 常用SQL语句

    GP数据库 常用SQL语句

    --1,查看列名以及类型
    select upper(column_name) ,data_type from information_schema.columns 
    where table_schema='ods_hs08' and lower(table_name)=lower('T_ods_hs08_secumreal');
    
    --2,查看表名剔除分区表名
    select a.tablename from pg_tables a where a.schemaname='ods_hs08'
    and a.tablename not in (select b.partitiontablename from pg_partitions b where b.schemaname='ods_hs08' ) ;
    --3,查分区表名
    select parentpartitiontablename,partitiontablename,* from pg_partitions ;
    --4,查看gpload错误记录表
    select * from gp_read_error_log('ext_gpload_reusable_2117d97e_5cf0_11e9_b169_2880239d54e8') 
    where cmdtime > to_timestamp('1554971595.06');
    
    select gp_read_error_log('ext_gpload_4a33e352_5f20_11e9_8223_2880239d54e8 ');
    --5,修改主键
    alter table ods_htgs.ttrd_acc_balance_cash
      add constraint ttrd_acc_balance_cash_pkey primary key (cash_ext_accid, accid, currency);
      --或者在建表语句列后面加
    CONSTRAINT ttrd_acc_balance_cash_pkey PRIMARY KEY (cash_ext_accid, accid, currency)
    
    --6,外键约束
    alter table ods_htgs.ttrd_acc_secu
      add constraint fk_ttrd_acc_secu foreign key (cash_accid)
      references ods_htgs.ttrd_acc_cash (accid);
      --或者在建表语句列后面加
      CONSTRAINT fk_ttrd_acc_secu FOREIGN KEY (cash_accid)
          REFERENCES ods_htgs.ttrd_acc_cash (accid) MATCH SIMPLE
          ON UPDATE NO ACTION
          ON DELETE NO ACTION
         
    --7,字符转日期转数字
    select * from  ods_hs08.t_ods_hs08_his_entrust
    where to_number(to_char(to_date(init_date || '','yyyyMMdd'),'yyyyMMdd'),'99999999') between 20010101 and 20191201
    
    --8,table_constraint语法:
    table_constraint is:
    
    [ CONSTRAINT constraint_name ]
    { UNIQUE ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
      PRIMARY KEY ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
      CHECK ( expression ) |
      FOREIGN KEY ( column_name [, ... ] ) REFERENCES reftable [ ( refcolumn [, ... ] ) ]
        [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ] [ ON DELETE action ] [ ON UPDATE action ] }
    [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]
    
    --9,查看数据库、表占用空间:
    select pg_size_pretty(pg_relation_size('schema.tablename'));
    select pg_size_pretty(pg_database_size('databasename'));
    
    --10,查看schema占用的空间:
    select pg_size_pretty(pg_relation_size(tablename)) from pg_tables t
    inner join pg_namespase d on t.schemaname=d.nspname group by d.nspname;
    -- 必须在数据库锁对应的存储系统里,至少保留30%的自由空间,日常巡检,哟啊检查存储空间的剩余容量;
    --11,查看数据分布情况:
    select gp_segment_id,count(*) from tablename group by 1;
    -- 如果数据分布不均匀,将发挥不了并行计算机的优势,严重影响性能;
    --12,查看锁信息:
    select locktype,database,c.relname,l.relation,l.transactionid,l.transaction,l.id,l.mode,
    l.granted,a.current_query from pg_locks l,pg_class c, pg_stat_activity a
    where l.relation=c.oid and l.pid =a.procpid
    order by c.relname;
    -- relname:表名
    -- locktype、mode:标识锁的类型
    --13,分区表信息
    select * from pg_partitions a 
    where a.schemaname='bib' and a.tablename='t_project_ibma1'
  • 相关阅读:
    C++中static_cast, dynamic_cast使用方法
    JavaScript中的Boolean 方法与Number方法
    參数预计:最大似然预计、贝叶斯预计与最大后验预计
    漫谈程序控制流
    怎样使用 RMAN 增量备份恢复 data guard log gap(日志断档)
    Unity3d修炼之路:GUIbutton简单使用,完毕对一个简单对象Cube的移动,旋转
    Python写自己主动化之邮件发送(匿名)
    LintCode
    缓存之 ACache
    Android Studio:Multiple dex files define Landroid/support/annotation/AnimRes
  • 原文地址:https://www.cnblogs.com/lizm166/p/10736979.html
Copyright © 2011-2022 走看看