背景

之前写了一篇关于查询PostgreSql数据库中表基础信息的文章,
其中关于表数据长度用到了一个pg_size_pretty函数
(可以将结果格式化成一种人类易读的格式,根据情况使用字节、kB、MB、GB 或者 TB),
记录下如何在mysql中实现类似效果。

获取表数据长度

查询bigdata-app这个库中所有数据长度

SELECTTABLE_NAME,CASEWHEN DATA_LENGTH > 1 << 30 THENCONCAT(ROUND( DATA_LENGTH / ( 1 << 30 ), 2 ),' GB')WHEN DATA_LENGTH > 1 << 20 THENCONCAT(ROUND( DATA_LENGTH / ( 1 << 20 ), 2 ),' MB')WHEN DATA_LENGTH > 1 << 10 THENCONCAT(ROUND( DATA_LENGTH / ( 1 << 10 ), 2 ),' kB')ELSE CONCAT(DATA_LENGTH,' bytes')END len
FROMinformation_schema.`TABLES`
WHERETABLE_SCHEMA = 'bigdata-app';

获取表详细信息

包括表名称,所属数据库,表占用空间大小,注释,创建时间等信息。

SELECTTABLE_NAME,TABLE_SCHEMA,CASEWHEN DATA_LENGTH > 1 << 30 THENCONCAT(ROUND( DATA_LENGTH / ( 1 << 30 ), 2 ),' GB')WHEN DATA_LENGTH > 1 << 20 THENCONCAT(ROUND( DATA_LENGTH / ( 1 << 20 ), 2 ),' MB')WHEN DATA_LENGTH > 1 << 10 THENCONCAT(ROUND( DATA_LENGTH / ( 1 << 10 ), 2 ),' kB')ELSE CONCAT(DATA_LENGTH,' bytes')END,TABLE_COMMENT,CREATE_TIME
FROMinformation_schema.`TABLES`
WHERETABLE_SCHEMA = 'bigdata-app';

获取表字段详细信息

包括字段名称,注释,类型,长度,是否为主键等信息。

SELECTCOLUMN_NAME,COLUMN_COMMENT,DATA_TYPE,REPLACE ( REPLACE ( SUBSTR( COLUMN_TYPE, POSITION( '(' IN COLUMN_TYPE )), '(', '' ), ')', '' ),
IF( COLUMN_KEY = 'PRI', 1, 0 )
FROMinformation_schema.`COLUMNS`
WHERETABLE_SCHEMA = 'bigdata-app' AND table_name = 'app_ds_connect';

mysql实现postgres中pg_size_pretty函数相关推荐

  1. mariadb mysql 语法_Mariadb MySQL、Mariadb中GROUP_CONCAT函数使用介绍

    MySQL.Mariadb中GROUP_CONCAT 函数使用介绍 By:授客 QQ:1033553122 语法: GROUP_CONCAT([DISTINCT] column_name [ORDER ...

  2. mysql ( )连接_MySQL中concat函数(连接字符串)

    MySQL中concat函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制 ...

  3. oracle mysql substr_Oracle数据库中substr()函数简介说明

    摘要: 下文讲述Oracle数据库中substr函数应用简介,如下所示: oracle substr函数功能说明 substr函数功能: substr函数在oracle数据库中的功能为:字符串截取函数 ...

  4. decode的mysql用法_oracle中decode函数的使用方法示例

    decode的几种用法 1:使用decode判断字符串是否一样 DECODE(value,if1,then1,if2,then2,if3,then3,...,else) 含义为 IF 条件=值1 TH ...

  5. mysql 特殊函数_MySQL中sleep函数的特殊现象示例详解

    前言 MySQL中的系统函数sleep,实际应用的场景不多,一般用来做实验测试,昨天在测试的时候,意外发现sleep函数的一个特殊现象.如果在查询语句中使用sleep函数,那么休眠的时间跟返回的记录有 ...

  6. mysql的extract_mysql中json_extract函数的使用?作用是什么?

    需求描述: 今天看mysql中的json数据类型,涉及到一些使用,使用到了函数json_extract来 获取json字段中某个key的值,在此记录下. 操作过程: 1.查看包含json字段的表信息 ...

  7. oracle实现mysql的if_oracle中decode函数 VS mysql中的if函数和case函数

    oracle中有decode函数,如下: select sum(decode(sex,'男',0,1)) 男生数 from school: 统计男生数目,含义为:decode()中sex字段为男时,用 ...

  8. mysql替换sql中rank函数_MySQL sql Rank()函数实现

    一字符串类 Ø  Concat函数:连接字符串 Ø  Instr函数:返回字符串在某一个字段的内容中的位置, 没有找到字符串返回0,否则返回位置(从1开始) Ø  字符串大小写转换[upper().u ...

  9. oracle sql now函数,SQL Server,MySQL,Oracle,PostgreSQL中常用函数用法(1)日

    练习使用Hibernate没有用MySQL数据库,而是用了前不久接触的PostgreSQL,由于不同的数据对于相同的操作有各自的函数,MySQL的date_format(),在PostgreSQL中是 ...

最新文章

  1. 2021年大数据常用语言Scala(三):Scala解释器
  2. 领导力,就是这5个问题
  3. python 打包 .app 运行 控制台窗口_Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法...
  4. 小猿圈html5教程之canvas绘制线段方法
  5. checkbox复选框样式
  6. 3ds max 渲染清晰面片的边缘
  7. leetcode 491. 递增子序列 思考分析
  8. Neo4j fails creating index,创建索引失败
  9. oracle宕机原因排查,oracle不定期的出现宕机的问题诊断
  10. Android 节日短信送祝福(功能篇:2-短信历史记录Fragment的编写)
  11. opencv漫水填充算法
  12. python requests 安装
  13. IDEA快速升级模块版本号
  14. 搭载rtmp直播服务器
  15. 《HarmonyOS开发 - 小凌派-RK2206开发笔记》第3章 应用开发
  16. Tables[0].Rows.count什么意思?
  17. mariadb master and salve configure
  18. 计算机分级时无法度量视频播放,无法度量视频播放性能怎么办-无法度量视频播放性能的解决方法 - 河东软件园...
  19. EF + EFCore 学习
  20. Hadoop Streaming 实战: 实用Partitioner类KeyFieldBasedPartitioner

热门文章

  1. 数据库性能指标QPS和TPS计算
  2. 使用Python实现量化交易机器人定时启动或停止小工具
  3. 第二十讲 DES算法简介
  4. 美国OFAC发布针对个人的“网络安全相关处罚”规则
  5. 笔记本120赫兹输出html,120Hz显示器vs.60Hz显示器盲测
  6. 利用三级结构进行蛋白质嵌入的自我监督预训练
  7. ios开发收藏按钮_iOS使用CoreData实现收藏功能
  8. c++继承和重用_重用实现–继承,组合和委派的演练
  9. [从头学数学] 第46节 数学广角──集合
  10. 微信小程序之摸爬滚打(一)