常用sql语句
查询应用程序在使用那张表
show OPEN TABLES where In_use > 0;
某列数据有重复的值,查询该重复的值
select cardno from csv group by cardno having count(*) >= 2
一张表放id和姓名 一张表放id和卡号 通过内连接查询卡号和姓名的关系
select dbo.EmployeeCard.EmpId, dbo.EmployeeCard.EcadNo,dbo.Employee.EmpName from dbo.EmployeeCard inner join dbo.Employee on dbo.EmployeeCard.EmpId = dbo.Employee.EmpId;
查询符合条件的数据库记录有多少条
SELECT count(*) FROM detention WHERE d_cardno = '166266'
这个列有几种数据
SELECT * FROM detention GROUP BY d_tag
求一个列值得数目和值
select COUNT(label),label from note group by label
查询2天以前的数据
SELECT *from user_password where TO_DAYS(now())-TO_DAYS(创建时间) > 2;
查看log日志是否开启,不使用的时候记得关掉,否则会大量占用磁盘空间。
show variables like 'general_log'
set GLOBAL general_log='ON';
SET GLOBAL general_log_file = '/tmp/mysql.log'
查看当前正在执行的sql语句,同时可以查看用户的当前连接
show processlist
查看慢日志
show variables like '%slow_query_log%';
设置慢日志记录什么样的SQL,默认10s
show variables like 'long_query_time%';
未使用索引的查询也被记录到慢查询日志中,一般也开启这个变量
log-queries-not-using-indexes:
查看mysql运行状态
show status
查看mysql中有多少条慢查询记录
show global status like '%Slow_queries%';
统计一个列有多少个不同的字段,每个字段是什么值
select label,count(*) as '统计结果' from note group by label;
mysql 查询一个表的所有字段名 和 字段类型
SELECT column_name,column_type
FROM information_schema.columns
WHERE TABLE_NAME='note'