mysql基本语句

查看mysql的版本:
进入mysql后:
mysql> select version();
或者
在终端下:mysql -V。 

看你的mysql现在已提供什么存储引擎:
mysql> show engines;

看你的mysql当前默认的存储引擎:
mysql>show variables like '%storage_engine%';

你要看某个表用了什么引擎(在显示结果里参数engine后面的就表示该表当前用的存储引擎):
mysql> show create table 表名;

访问表   select top 10 * from 表
连接到本机上的MYSQL  mysql -h localhost -u root -p
随机取记录  select * from 表名 order by rand() limit 0,5   (0-5)
断开服务器           quit
查看数据库           show databases;
选择数据库           use 数据库名;
查看表               show tables;
查看表结构           describe 表名;
插入记录             insert into 表名 set 字段名='值',字段名='值';
select 字段1,字段2`````字段N from 表 where 字段1=条件值“
查看表中的所有记录   select * from
条件查询             select * from 表名 where 条件;
模糊查询             select * from 表名 where 字段名 like '%关键字%';

模糊查询(返回0-1000条记录)  select * from 表名 where 字段名 like '%关键字%' LIMIT 0,1000;
排序行               select * from 表名 ORDER BY 字段名;
排序行(降序)         select * from 表名 ORDER BY 字段名 DESC;
返回空表             SELECT * FROM 表名 LIMIT 0
修改记录             update  表名 set 更改值 where 条件;
修改记录             update 表 set 字段c='512021'+right(字段c,len(字段c)-len('513921')) where left(字段c,len

('513921'))='513921'
修改记录             update 表 set 字段c=repalce(字段c,'513921','512021')
删除记录             delete from 表名 where 条件;
创建数据库           create database 库名                
创建表               create table 表名 ( 字段名 字段类型(字段长度) PRIMARY KEY AUTO_INCREMENT,,,,);
内存中创建表         CREATE TEMPORARY TABLE 表名 SELECT * FROM 源表 WHERE 条件;
复制表               CREATE TABLE 表名 SELECT * from 源表;
复制表结构           create table 表名2 like 表名1;  

删除表               drop TABLE IF EXISTS table 表名;
清空表               delete from 表名
清空表               TRUNCATE TABLE 表名
创建索引             CREATE INDEX  索引名 ON 表名 (列名(10));
删除索引             DROP INDEX 索引名 ON 表名
看清一张表有什么索引  SHOW INDEX FROM ptmp2
列的最大值           select MAX(字段名) AS 字段名的最大值 FROM 表名
列的最小值           select MIN(字段名) AS 字段名的最小值 FROM 表名
列的总和             select SUM(字段名) AS 字段名的总和 FROM 表名
列的平均             select AVG(字段名) AS 字段名的平均 FROM 表名
返回表的总行数       SELECT COUNT(*) FROM 表名;
精确查找    select * from 表名 where 字段名=' 要查找的内容 ';
查找某字段  select * from 表 order by 字段
去除重复后输出记录       select DISTINCT 字段名 FROM 表名;
修改密码             UPDATE user SET Password=PASSWORD('密码') WHERE user='用户名';
增加新用户           grant select on 数据库.* to 用户名@登录主机 identified by "密码"
备份数据库           mysqldump --opt 原库名>备份库名
delete * from 表 where 编号 not in (select min(编号) from 表 group by 电话);删除重复项
SELECT * INTO OUTFILE 'file_name' FROM 表名 做有选择的备份并且用LOAD DATA INFILE 'file_name' REPLACE ...恢复。为了避免重复记

录,在表中你需要一个PRIMARY KEY或UNIQUE键。当在唯一键值上一个新记录与一个老记录重复时,REPLACE关键词使得老记录用一个新记录替代。
LOAD DATA INFILE "C:\tmp\skr.txt" INTO TABLE skr;
SELECT * FROM skr INTO OUTFILE 'C:/tmp/skr.txt';

回收表闲置的空间     OPTIMIZE TABLE 表名
返回当前的数据库名字 select DATABASE();
返回当前MySQL用户名  select USER();
返回当前MySQL用户名  select substring_index(USER(),"@",1);
MySQL服务器版本      select VERSION();
清空主机缓存表       FLUSH HOSTS
整理查询缓存,以更好的利用它的内存。这个命令不会从缓存中移除任何查询  FLUSH QUERY CACHE
转储清除查询缓存     FLUSH TABLES
从查询缓存中移除所有的查询结果     RESET QUERY CACHE
监视查询缓存的性能                 SHOW STATUS
关闭并且再打开标准和更新记录文件   FLUSH LOGS
从mysql数据库授权表中重新装载权限  FLUSH PRIVILEGES
关闭所有打开的表                   FLUSH TABLES
重置大多数状态变量到0              FLUSH STATUS
察看线程                           SHOW PROCESSLIST
杀死线程                           KILL ID

你可能感兴趣的:(databases)