notebook/996/Hologres/元数据.sql
2025-06-19 13:16:41 +08:00

75 lines
3.6 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

SELECT A .oid, A .relname AS NAME, b.description AS COMMENT 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
;
-- 普通表非分区表数据
select *
FROM pg_class A
WHERE A .relnamespace = ( SELECT oid FROM pg_namespace WHERE nspname = 'public' ) -- 空间是 public
AND A .relkind = 'r' -- 关系的类型,可以是普通表('r')、索引('i')、序列('S')、视图('v')、物化视图('m')、组合类型('c')、外部表('f')、分区表('p'
AND relpartbound is NULL -- 非分区表
-- 分区表主表数据
select *
FROM pg_class A
WHERE A .relnamespace = ( SELECT oid FROM pg_namespace WHERE nspname = 'public' ) -- 空间是 public
AND A .relkind = 'p' -- 关系的类型,可以是普通表('r')、索引('i')、序列('S')、视图('v')、物化视图('m')、组合类型('c')、外部表('f')、分区表('p'
AND relpartbound is NULL -- 非分区表
select reltuples -- 表记录数
FROM pg_class A where relname='ods_track_log_20241107'
-- 普通表非分区表数据
select 'sdk_statis_test' databases,'public' nspname,relname table_name,relkind table_type,relhassubclass relhassubclass,'' son_table
FROM pg_class t1
WHERE t1.relnamespace = ( SELECT oid FROM pg_namespace WHERE nspname = 'public' ) -- 空间是 public
AND t1.relkind = 'r' -- 关系的类型,可以是普通表('r')、索引('i')、序列('S')、视图('v')、物化视图('m')、组合类型('c')、外部表('f')、分区表('p'
AND relpartbound is NULL -- 非分区表
UNION
-- 分区表主表数据
select 'sdk_statis_test' databases,'public' nspname,relname table_name,relkind table_type,relhassubclass relhassubclass,'' son_table
FROM pg_class t1
WHERE t1.relnamespace = ( SELECT oid FROM pg_namespace WHERE nspname = 'public' ) -- 空间是 public
AND t1.relkind = 'p' -- 关系的类型,可以是普通表('r')、索引('i')、序列('S')、视图('v')、物化视图('m')、组合类型('c')、外部表('f')、分区表('p'
and t1.relhassubclass!='t'
UNION
select
databases ,nspname, table_name, table_type, relhassubclass, string_agg(son_table, ',') AS son_table
from
(
select 'sdk_statis_test' databases,'public' nspname,t1.relname table_name,t1.relkind table_type,t1.relhassubclass relhassubclass,t3.relname son_table
FROM pg_class t1
JOIN pg_inherits t2
on t1.oid=t2.inhparent
JOIN pg_class t3
on t2.inhrelid = t3.oid
WHERE t1.relnamespace = ( SELECT oid FROM pg_namespace WHERE nspname = 'public' ) -- 空间是 public
AND t1.relkind = 'p' -- 关系的类型,可以是普通表('r')、索引('i')、序列('S')、视图('v')、物化视图('m')、组合类型('c')、外部表('f')、分区表('p'
and t1.relhassubclass='t'
) t4
group by databases ,nspname, table_name, table_type, relhassubclass
SELECT
count(1) zs
FROM
ods.track_log_037 a
WHERE
a.ds BETWEEN '20240829' AND '20241125'
select concat(E'union all select count(*) zs, \'' ,relname, E'\' tablename from ods.',relname,E' where ds BETWEEN \'20241118\' AND \'20241125\' ') sql_str
FROM pg_class A
WHERE A .relnamespace = ( SELECT oid FROM pg_namespace WHERE nspname = 'ods' ) -- 空间是 public
AND A .relkind = 'p' -- 关系的类型,可以是普通表('r')、索引('i')、序列('S')、视图('v')、物化视图('m')、组合类型('c')、外部表('f')、分区表('p'
AND relpartbound is NULL