【分享】Mysql、SqlServer、Oracle、PostgreSQL、ClickHouse和PrestoDB获取元数据(表、字段信息)SQL

本文整理了在不同数据库系统(如Mysql,SqlServer,Oracle,PostgreSQL,ClickHouse,PrestoDB)中获取表元数据和字段元数据的SQL查询语句,包括表名、表注释、字段名、数据类型和字段注释等关键信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

工作中做数据同步的过程中,经常要获取表信息、表字段等元数据,做SQL解析,故整理一下常用的数据库获取元数据的SQL

这里的元数据指的是数据库内描述数据表和表字段信息的“身份证”


元数据结构定义:

元数据表结构定义TableMetadata

@Data
public class TableMetadata {
   
    private String tableSchema;
    private String tableName;
    private String tableComment;
}

元数据字段结构定义ColumnMetadata

@Data
public class ColumnMetadata {
   
    private String tableName;
    private String columnName;
    private String dataType;
    private String columnComment;
}

获取元数据:

提示:第一条sql是获取表元数据,第二条是获取字段元数据

Mysql 获取元数据

SELECT
	TABLE_NAME,
	TABLE_COMMENT,
	TABLE_SCHEMA
FROM
	INFORMATION_SCHEMA.TABLES
WHERE
	TABLE_SCHEMA = '%s'
SELECT
	TABLE_NAME,
	COLUMN_NAME,
	DATA_TYPE,
	COLUMN_COMMENT
FROM
	information_schema.COLUMNS
WHERE
	TABLE_SCHEMA = '%s'

SqlServer 获取元数据

SELECT name AS SCHEMA_NAME 
 FROM sys.schemas
SELECT
CONVERT(nvarchar(50),ISNULL(S.[name], '')) as TABLE_SCHEMA 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农阿福

看明白的同学,别忘请阿福喝奶茶

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值