sql查询出数据库所有表名、表注释、字段、字段类型、字段注释、(用于导出表结构)

该SQL查询从colst1表中提取了表名称、字段名、数据类型及字段说明,排除了临时表,并按表名和列ID排序,展示了详细的表结构信息。
摘要由CSDN通过智能技术生成

SELECT 
    CASE 
        WHEN t1.rn = 1 THEN t1.Table_Name
        ELSE ''
    END AS "表名称",
    CASE 
        WHEN t1.rn = 1 THEN t1.comments
        ELSE ''
    END AS "表说明",
    t1.Data_Type AS "数据类型",
    t1.Column_Name AS "字段名称",
    t2.Comments AS "字段说明"
FROM (
    SELECT 
        t1.Table_Name,
        t3.comments,
        t1.Data_Type,
        t1.Column_Name,
        t1.Column_ID,
        ROW_NUMBER() OVER(PARTITION BY t1.Table_Name ORDER BY t1.Column_ID) AS rn
    FROM cols t1
    LEFT JOIN user_tab_comments t3 ON t1.Table_name = t3.Table_name
) t1
LEFT JOIN user_col_comments t2 ON t1.Table_name = t2.Table_name AND t1.Column_Name = t2.Column_Name
WHERE NOT EXISTS (
    SELECT t4.Object_Name FROM User_objects t4
    WHERE t4.Object_Type = 'TABLE' 
    AND t4.Temporary = 'Y' 
    AND t4.Object_Name = t1.Table_Name
)
ORDER BY t1.Table_Name, t1.Column_ID;

效果: 

 

  • 14
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值