博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql中级操作
阅读量:4512 次
发布时间:2019-06-08

本文共 1321 字,大约阅读时间需要 4 分钟。

解析sql执行过程

show VARIABLES like '%profil%' //查看是否开启了剖析 如没开启set profiling=1; 启用

show profiles;

set @query_id=37; //sql_id

select STATE,sum(duration) as Total_R,ROUND(100*SUM(DURATION)/(SELECT SUM(DURATION) FROM INFORMATiON_SCHEMA.PROFILING WHERE QUERY_ID=@query_id),2) as Pct_R,

count(*) as calls,sum(duration)/count(*) as "R/Call" from information_schema.profiling

where query_id=@query_id

group by state

order by Total_R desc;

 

查询数据库中表的数据量最大

select sum(DATA_LENGTH)+sum(INDEX_LENGTH) from information_schema.tables

where table_schema='database-name'

 

 

查看数据库中有哪些表(后面的条件是没有数据的表)

 

SELECT TABLE_NAME TABLES FROM information_schema.TABLES

 

where table_schema = 'database-name' and table_rows = 0

 

导出数据库

mysqldump -u username -p  target_database > new_sql_filename.sql

 

导出的表结构sql文件(加d参数)

mysql -u username -p -d database_name < sql_file_name.sql

 

导出某张表结构

mysqldump -u username -p  -d target_database  table_name > new_sql_filename.sql

 

导出多张表结构

mysqldump -u username -p  -d target_database  tab1_name tab2_name > new_sql_filename.sql

 

查询表中某字段重复记录

select field_name,count(*) as count from table_name group by field_name having count>1;

 

删除重复记录中的一条

delete from table_name where id in ( select a.id from ( select max(id) id from table_name a group by field_name HAVING count(field_name)>1 ) a )

转载于:https://www.cnblogs.com/codechange/p/8367086.html

你可能感兴趣的文章
用链表实现消息队列
查看>>
CLRS10.1-7练习 - 用双队列实现栈
查看>>
Microsoft Windows平台的NoSQL数据存储引擎
查看>>
json 后台传数据
查看>>
Hibernate核心接口和工作原理
查看>>
【JS】学习18天Jquery Moblie的总结笔记。
查看>>
浅谈虚拟机
查看>>
Ubuntu系统Linux编译osg库
查看>>
error MSB8008: 指定的平台工具集(v120)未安装或无效 解决办法
查看>>
5.2 面向对象上
查看>>
JSP 总结
查看>>
Host is not allowed to connect to this MySQL server 解决方案
查看>>
JS 数据类型分析及字符串的方法
查看>>
ASP.Net Core 2.2 MVC入门到基本使用系列 (一)
查看>>
ORA-00907: 缺失右括号
查看>>
【原】移动web资源整理
查看>>
第 7 章 —— 代理模式
查看>>
项目介绍&人员介绍
查看>>
服务稳定、高可用
查看>>
第2课第4节_Java面向对象编程_多态性_P【学习笔记】
查看>>