1、查看字段详细信息

  1. -- 查看详细信息
  2.  
  3. SELECT
  4. COLUMN_NAME "字段名称",
  5. COLUMN_TYPE "字段类型长度",
  6. IF(EXTRA="auto_increment",CONCAT(COLUMN_KEY,"(", IF(EXTRA="auto_increment","自增长",EXTRA),")"),COLUMN_KEY) "主外键",
  7. IS_NULLABLE "空标识",
  8. COLUMN_COMMENT "字段说明"
  9. FROM
  10. information_schema. COLUMNS
  1. -- 数据库名:jn_power 表名 rpt_cap_hour_ammeter_201810
  1. WHERE TABLE_SCHEMA = 'jn_power' AND TABLE_NAME = 'rpt_cap_hour_ammeter_201810';
  2.  

结果如下:

2、查字段

  1. SELECT
  2. CONCAT(COLUMN_NAME,"," )
  3.  
  4. FROM
  5. information_schema.COLUMNS
  6. WHERE
  7. TABLE_SCHEMA = 'jn_power'
  8. AND TABLE_NAME = 'rpt_cap_ammeter_2018';

3、查询字段个数

  1. SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='jn_power' AND table_name='rpt_cap_ammeter_2018'

4、查某个字段所在行数

  1. SET @mytemp = 0;
  2. SELECT * FROM (
  3. SELECT (@mytemp:=@mytemp+1) AS newid,t.COLUMN_NAME FROM
  4. (
  5. SELECT
  6. COLUMN_NAME
  7.  
  8. FROM
  9. information_schema.COLUMNS
  10. WHERE
  11. TABLE_SCHEMA = 'jn_power'
  12. AND TABLE_NAME = 'rpt_cap_ammeter_2018'
  13. )t
  14. ) t
  15.  
  16. WHERE newid=(SELECT COUNT(*) newid FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='jn_power' AND table_name='rpt_cap_ammeter_2018')

5、处理成插入的字段

  1. -- 一列,逗号在前
  2. SET @mytemp = 0;
  3. SELECT
  4. (CASE t.newid
  5. WHEN 1
  6. THEN CONCAT(' ',COLUMN_NAME)
  7. ELSE CONCAT(',',COLUMN_NAME)
  8. END
  9. )COLUMN_NAME
  10. -- t.newid,t.COLUMN_NAME
  11. FROM (
  12.  
  13. SELECT * FROM (
  14. SELECT (@mytemp:=@mytemp+1) AS newid,t.COLUMN_NAME FROM
  15. (
  16. SELECT
  17. COLUMN_NAME
  18. FROM
  19. information_schema.COLUMNS
  20. WHERE
  21. TABLE_SCHEMA = 'jn_power'
  22. AND TABLE_NAME = 'rpt_cap_hour_ammeter_201810'
  23. )t
  24. ) t
  25. )t
  26.  
  27. -- 用分组的方法(一行)
  28. SELECT
  29. COUNT(*) count_num,GROUP_CONCAT(COLUMN_NAME)
  30. FROM
  31. information_schema.COLUMNS
  32. WHERE
  33. TABLE_SCHEMA = 'jn_power'
  34. AND TABLE_NAME = 'rpt_cap_ammeter_2018'

6、查询某个库除了主键以外的约束

  1. SELECT
  2. TABLE_NAME '表名',
  3. COLUMN_NAME '字段名',
  4. CONSTRAINT_NAME '约束名',
  5. REFERENCED_TABLE_NAME '父表名',
  6. REFERENCED_COLUMN_NAME '父表字段名'
  7. FROM
  8. INFORMATION_SCHEMA.KEY_COLUMN_USAGE
  9. WHERE
  10. TABLE_SCHEMA = 'net_management'
  11. AND CONSTRAINT_name != 'PRIMARY';

7、查询某个库的约束和约束类型

  1. SELECT
  2. kcu.CONSTRAINT_NAME '约束名称',
  3. LEFT(tc.CONSTRAINT_TYPE,1) '约束类型',
  4. kcu.TABLE_SCHEMA '子库',
  5. kcu.TABLE_NAME '子表',
  6. kcu.COLUMN_NAME '子表字段',
  7. kcu.REFERENCED_TABLE_NAME '父库',
  8. kcu.REFERENCED_TABLE_SCHEMA '父表',
  9. kcu.REFERENCED_COLUMN_NAME '父表字段'
  10.  
  11. FROM
  12. information_schema.KEY_COLUMN_USAGE kcu
  13. LEFT JOIN
  14. information_schema.`TABLE_CONSTRAINTS` tc
  15. ON kcu.TABLE_SCHEMA = tc.TABLE_SCHEMA
  16. AND kcu.TABLE_NAME = tc.TABLE_NAME
  17. AND kcu.CONSTRAINT_NAME = tc.CONSTRAINT_NAME
  18. WHERE
  19. kcu.TABLE_SCHEMA = 'zx_public'
  20.  
  21. -- AND kcu.CONSTRAINT_NAME!='PRIMARY'
  22. ORDER BY kcu.TABLE_SCHEMA,kcu.TABLE_NAME,tc.CONSTRAINT_TYPE;
  23. -- AND kcu.TABLE_NAME = 'res_site';

mysql查询某个数据库某个表的字段的更多相关文章

  1. mysql 查询指定数据库所有表, 指定表所有列, 指定列所有表 所有外键及索引, 以及索引的创建和删除

    查询指定 数据库 中所有 表 (指定数据库的,所有表) // 可以把 TABLE_NAME 换成 * 号, 查看更丰富的信息 SELECT TABLE_NAME FROM information_sc ...

  2. mysql 查询整个数据库所有表的行数

    >use information_schema; >select sum(table_rows) from tables where TABLE_SCHEMA = "test&q ...

  3. 查询数据库所有表和字段及其注释(mysql)

    #查询某个库所有表 select * from information_schema.TABLES where table_schema = '数据库' #查询某个库所有表的字段 select * f ...

  4. mysql数据库、表、字段、记录:增、删、改、查

    /* 结构:数据库.表.字段.记录 操作:增删改查 */ -- 1.数据库:增删改查 create datebase if not exists jkxy; drop database if exis ...

  5. mysql数据库user表host字段的%问题

    搜索: mysql数据库user表host字段的%问题 连接:http://blog.csdn.net/xiaomengh/article/details/48706149 在mysql数据库中,使用 ...

  6. MySQL 查询某个数据库中所有包含数据记录的表名

    MySQL 查询某个数据库中所有包含数据记录的表名 有时根据实际应用需要,需要对数据进行备份. 如果一个数据库中有很多数据表,但是只想备份包含数据记录的那些表数据(空表不做数据备份). 如果通过如下S ...

  7. #mysql查询特定数据库中的所有表名

    #mysql查询特定数据库中的所有表名select table_namefrom information_schema.tableswhere table_schema='smbms' and tab ...

  8. mysql查询在一张表不在另外一张表的记录

    mysql查询在一张表不在另外一张表的记录   问题:    查询一个表(tb1)的字段记录不在另一个表(tb2)中      条件:tb1的字段key的值不在tbl2表中      -------- ...

  9. 数据库的表的字段名称与实体类(pojo)不对应解决方案

    数据库的表的字段名称与实体类(pojo)不对应解决方案 数据库表 ![image-20200429130200825](C:%5CUsers%5C%E6%9E%97%E6%AD%A3%E6%98%8E ...

随机推荐

  1. UEBA——通过用户画像识别安全威胁

    UEBA and Machine Learning - Download Free Guide for CISOs‎ Adinfo.niara.com/UEBA/Guide-For-CISOs‎ Le ...

  2. Session移除

    Session.Clear()就是把Session对象中的所有项目都删除了,Session对象里面啥都没有.但是Session对象还保留. Session.Abandon()就是把当前Session对 ...

  3. react之redux增加删除数字

    比如在页面中添加和删除‘222’ action.js export const ADD= 'ADD'; export const RED='RED'; export const add=(str)=& ...

  4. CF 809D Hitchhiking in the Baltic States——splay+dp

    题目:http://codeforces.com/contest/809/problem/D 如果值是固定的,新加入一个值,可以让第一个值大于它的那个长度的值等于它. 如今值是一段区间,就对区间内的d ...

  5. linux sdk配置

    http://blog.csdn.net/wudj810818/article/details/51251408,环境变量配置不要用 SDK环境变量: export PATH=$PATH:/opt/a ...

  6. C# 获取点击列的索引

    datagridview 怎么获取选中行的某一列的索引比如 下面是表学号 姓名 所在年级 1    张     高一 2    李     高二当我选择第二行的时候 我想取所在年级的列索引 这时候那个 ...

  7. Flutter实战视频-移动电商-20.首页_火爆专区上拉加载效果

    20.首页_火爆专区上拉加载效果 上拉加载的插件比较都.没有一个一枝独秀的 可以自定义酷炫的header和footer 一直在更新 推荐使用这个插件: https://github.com/xuelo ...

  8. [CVE-2014-3704]Drupal 7.31 SQL注入漏洞分析与复现

    记录下自己的复现思路 漏洞影响: Drupal 7.31 Drupal是一个开源内容管理平台,为数百万个网站和应用程序提供支持. 0x01漏洞复现 复现环境: 1) Apache2.4 2) Php ...

  9. Laravel中的查询构造器

    public function query(){ //新增数据 //$bool = DB::table('wd_user')->insert(['username'=>'jack']); ...

  10. python3 封装之property 多态 绑定方法classmethod 与 非绑定方法 staticmethod

    property 特性 什么是特性property property 是一种特殊的属性,访问它时会执行一段功能(函数),然后返回值 例如 BMI指数(bmi是计算而来的,但很明显它听起来像是一个属性而 ...