代码改变世界

【openGauss】运维常用的SQL

  Ivan的一亩三分地  阅读(128)  评论(0编辑  收藏  举报

一、查模式

SELECT pn.oid AS schema_oid, iss.catalog_name, iss.schema_owner, iss.schema_name
FROM information_schema.schemata iss
INNER JOIN pg_namespace pn ON pn.nspname = iss.schema_name;

二、查对象

  1. 查看某模式下的表名
    select tablename from pg_tables where schemaname = 'hsjc_bi';

select schemaname,tablename
from pg_tables
where schemaname = 'xxx' and tablename like 'fact_%';

select 'truncate table ' || schemaname || '.' || tablename || ';'
from pg_tables
where schemaname = 'xxx' and tablename like 'fact_%';

  1. 查看某表的字段

SELECT
A.attname AS NAME,
format_type(A.atttypid, A.atttypmod) AS TYPE,
A.attnotnull AS NOTNULL,
col_description(A.attrelid, A.attnum) AS COMMENT
FROM
pg_class AS C,
pg_attribute AS A
WHERE
C.relname = 'tableName'
AND A.attnum > 0
AND A.attrelid = C.oid

  1. 查询数据表名称及中文备注、每个表的记录数

SELECT a.relname AS name,
b.description AS comment,
a.reltuples
FROM pg_class a
LEFT OUTER JOIN pg_description b ON b.objsubid=0 AND a.oid = b.objoid
WHERE a.relnamespace = (SELECT oid FROM pg_namespace WHERE nspname='public') AND a.relkind='r'
ORDER BY a.relname;

  1. 查某表的索引

二、查大小

  1. 查看所有表的表大小

select table_schema,
TABLE_NAME,
reltuples,
pg_size_pretty(pg_total_relation_size('"'||table_schema||'"."'||table_name||'"'))
from pg_class, information_schema.tables
where relname = TABLE_NAME
ORDER BY reltuples desc
limit 20;

查看某表的索引

相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示