MySQL查询表结构语句(附案例)

sql语句

SELECT
    COLUMN_NAME 列名,
    COLUMN_TYPE 数据类型,
    DATA_TYPE 字段类型,
    CHARACTER_MAXIMUM_LENGTH 长度,
    IS_NULLABLE 是否为空,
    COLUMN_DEFAULT 默认值,
    COLUMN_COMMENT 备注 
FROM
    INFORMATION_SCHEMA.COLUMNS
WHERE table_schema='xxx'           //你的数据库名字
      and table_name  = 'xxx'      //你的表名字

举个栗子:

SELECT
    COLUMN_NAME 列名,
    COLUMN_TYPE 数据类型,
    DATA_TYPE 字段类型,
    CHARACTER_MAXIMUM_LENGTH 长度,
    IS_NULLABLE 是否为空,
    COLUMN_DEFAULT 默认值,
    COLUMN_COMMENT 备注 
FROM
    INFORMATION_SCHEMA.COLUMNS
WHERE table_schema='ljptx' 
      and table_name  = 'pb_resident'

在这里插入图片描述备注按逗号分隔拆分

SELECT 
  COLUMN_COMMENT 备注,
	SUBSTRING_INDEX(COLUMN_COMMENT, ',', 1) AS '名称',
	SUBSTRING_INDEX(SUBSTRING_INDEX(COLUMN_COMMENT, ',', 2), ',', -1) AS '是否显示',
    SUBSTRING_INDEX(SUBSTRING_INDEX(COLUMN_COMMENT, ',', 3), ',', -1) AS '注释'
FROM
    INFORMATION_SCHEMA.COLUMNS
WHERE table_schema='ljptx' 
      and table_name  = 'pb_resident'
			and COLUMN_NAME='person_code'

在这里插入图片描述
SUBSTRING_INDEX用法:

SUBSTRING_INDEX(‘str’,‘obj’,‘num’)
str:要分隔的字符串
obj:以什么内容作为分隔符
num:分隔的长度,正数,从左向右分隔的长度的内容,负数,从右向左分隔的长度的内容

猜你喜欢

转载自blog.csdn.net/weixin_44226883/article/details/120223210