mysql中级_mysql中级操作

解析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;

删除重复记录中的一条

deletefromtable_name whereid in(selecta.id from(selectmax(id)id fromtable_name a groupbyfield_name HAVING count(field_name)>1)a

)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值