1、查看字段详细信息

-- 查看详细信息

SELECT
COLUMN_NAME "字段名称",
COLUMN_TYPE "字段类型长度",
IF(EXTRA="auto_increment",CONCAT(COLUMN_KEY,"(", IF(EXTRA="auto_increment","自增长",EXTRA),")"),COLUMN_KEY) "主外键",
IS_NULLABLE "空标识",
COLUMN_COMMENT "字段说明"
FROM
information_schema. COLUMNS
-- 数据库名:jn_power 表名 rpt_cap_hour_ammeter_201810
WHERE TABLE_SCHEMA = 'jn_power' AND TABLE_NAME = 'rpt_cap_hour_ammeter_201810';

结果如下:

2、查字段

SELECT
CONCAT(COLUMN_NAME,"," ) FROM
information_schema.COLUMNS
WHERE
TABLE_SCHEMA = 'jn_power'
AND TABLE_NAME = 'rpt_cap_ammeter_2018';

3、查询字段个数

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

4、查某个字段所在行数

SET @mytemp = 0;
SELECT * FROM (
SELECT (@mytemp:=@mytemp+1) AS newid,t.COLUMN_NAME FROM
(
SELECT
COLUMN_NAME FROM
information_schema.COLUMNS
WHERE
TABLE_SCHEMA = 'jn_power'
AND TABLE_NAME = 'rpt_cap_ammeter_2018'
)t
) t WHERE newid=(SELECT COUNT(*) newid FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='jn_power' AND table_name='rpt_cap_ammeter_2018')

5、处理成插入的字段

-- 一列,逗号在前
SET @mytemp = 0;
SELECT
(CASE t.newid
WHEN 1
THEN CONCAT(' ',COLUMN_NAME)
ELSE CONCAT(',',COLUMN_NAME)
END
)COLUMN_NAME
-- t.newid,t.COLUMN_NAME
FROM ( SELECT * FROM (
SELECT (@mytemp:=@mytemp+1) AS newid,t.COLUMN_NAME FROM
(
SELECT
COLUMN_NAME
FROM
information_schema.COLUMNS
WHERE
TABLE_SCHEMA = 'jn_power'
AND TABLE_NAME = 'rpt_cap_hour_ammeter_201810'
)t
) t
)t -- 用分组的方法(一行)
SELECT
COUNT(*) count_num,GROUP_CONCAT(COLUMN_NAME)
FROM
information_schema.COLUMNS
WHERE
TABLE_SCHEMA = 'jn_power'
AND TABLE_NAME = 'rpt_cap_ammeter_2018'

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

SELECT
TABLE_NAME '表名',
COLUMN_NAME '字段名',
CONSTRAINT_NAME '约束名',
REFERENCED_TABLE_NAME '父表名',
REFERENCED_COLUMN_NAME '父表字段名'
FROM
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
TABLE_SCHEMA = 'net_management'
AND CONSTRAINT_name != 'PRIMARY';

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

SELECT
kcu.CONSTRAINT_NAME '约束名称',
LEFT(tc.CONSTRAINT_TYPE,1) '约束类型',
kcu.TABLE_SCHEMA '子库',
kcu.TABLE_NAME '子表',
kcu.COLUMN_NAME '子表字段',
kcu.REFERENCED_TABLE_NAME '父库',
kcu.REFERENCED_TABLE_SCHEMA '父表',
kcu.REFERENCED_COLUMN_NAME '父表字段' FROM
information_schema.KEY_COLUMN_USAGE kcu
LEFT JOIN
information_schema.`TABLE_CONSTRAINTS` tc
ON kcu.TABLE_SCHEMA = tc.TABLE_SCHEMA
AND kcu.TABLE_NAME = tc.TABLE_NAME
AND kcu.CONSTRAINT_NAME = tc.CONSTRAINT_NAME
WHERE
kcu.TABLE_SCHEMA = 'zx_public' -- AND kcu.CONSTRAINT_NAME!='PRIMARY'
ORDER BY kcu.TABLE_SCHEMA,kcu.TABLE_NAME,tc.CONSTRAINT_TYPE;
-- 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. mongodb存储二进制数据的二种方式——binary bson或gridfs

    python 版本为2.7 mongodb版本2.6.5 使用mongodb存储文件,可以使用两种方式,一种是像存储普通数据那样,将文件转化为二进制数据存入mongodb,另一种使用gridfs,咱们 ...

  2. 生产环境下JAVA进程高CPU占用故障排查---temp

    问题描述:生产环境下的某台tomcat7服务器,在刚发布时的时候一切都很正常,在运行一段时间后就出现CPU占用很高的问题,基本上是负载一天比一天高. 问题分析:1,程序属于CPU密集型,和开发沟通过, ...

  3. CS231n 2016 通关 第四章-反向传播与神经网络(第一部分)

    在上次的分享中,介绍了模型建立与使用梯度下降法优化参数.梯度校验,以及一些超参数的经验. 本节课的主要内容: 1==链式法则 2==深度学习框架中链式法则 3==全连接神经网络 =========== ...

  4. 3、css边框以及其他常用样式

    一.边框 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

  5. 【Linux学习】Vi / Vim编辑器—编辑器工作模式、vi编辑操作

    Vi / Vim编辑器-编辑器工作模式.vi编辑操作 推荐一个很好的学习指南:http://www.oschina.net/translate/learn-vim-progressively 一.编辑 ...

  6. Identity Server 4 原理和实战(完结)_Authorization Code Flow 实例

    Code在Oauth2.0和OpenId Connect里面分别叫做不同的名字 OAuth只介绍了如何授权.没有介绍如何身份认证. OpenId Connect:既规定了怎么授权,也规定了怎么身份认证 ...

  7. UVa 1412 Fund Management (预处理+状压DP)

    题意:题意很难说清楚自己看原文,链接:UVa 1412 Fund Management 析:总体来说如果没有超时的话,这个题不是特别难,但是这个题很容易超时,主要是体现在状态转移时,很容易想到状态方程 ...

  8. [教程心得] Flash AIR 调用exe/bat且可以传参

    Flash AIR 如何调用exe/bat?并且有些情况下需要传参,如何传参呢? 看下面例子: cmd传参打开系统软键盘(参考http://bbs.9ria.com/thread-181265-1-1 ...

  9. Linux环境下Nginx及负载均衡

    Nginx 简介 Nginx 是一个高性能的 HTTP 和反向代理 Web 服务器,同时也提供了 IMAP/POP3/SMTP 服务.前向代理作为客户端的代理,服务端只知道代理的 IP 地址而不知道客 ...

  10. lightoj 1089 【离散化+线段树】

    题意: 给你n个区间,然后给你m个i点问你这个点在几个所给定的区间里: 思路: 离散化+区间覆盖 #include <bits/stdc++.h> using namespace std; ...