mysql常用语句
-
列出mysql数据管理系统的数据库列表
show databases;
-
在对数据库操作之前,需要告诉mysql我要使用哪个数据库
use database_name;
-
展示一个数据库的所有数据表
show tables;
-
显示一个数据表的基本消息
show columns from tables_name;
-
显示一个数据表的索引消息
show index from table_name;
-
显示数据库所有表的消息
show table status from database_name;
-
创建数据库
create database database_name;
-
删除数据库
drop database database_name;
-
创建表
create table [if not exists] table_name( 字段名 字段类型, .... ); if not exists:使用if not exists 创建表时,表名相同字段不同可以创建表,如果没有使用if not exists 创建表时如果表名已存在会报错。
-
插入数据
#方法1,指定字段插入 insert into table_name (字段1,字段2,....) values(数值1,数值2,...); #方法2,向数据表中的所有字段插入数据 insert into table_name values(数值1,数值2,...);
-
查询表
#查询表中所有数据 select * from table_name; #查询表中指定字段 select 字段1,字段2 from table_name;
-
返回n条数据(使用关键字:limit)
#从n条数据开始查询m条数据 select * from table_name limit n,m;
-
where子句,可以用于select,update,delete中
#查询id等于1的所有数据 select * from table_name where id=1;
-
更新语句
update table_name set 字段名1='新数据',字段名2='新数据' where 字段 = '数据';
-
删除语句
- drop,delete,truncate的区别
- drop直接删除表或直接删除数据库。
- delete删除表中的数据。
- truncate删除的是表中的数据,但它和delete有区别。truncate相当于初始化。例如;我们给id设置自增后如果把数据都删除了,当我们在插入数据时id不会为1,它会是删除数据的最大id+1。若使用truncate删除则会从1开始。
delete from table_name [where 条件];
- drop,delete,truncate的区别
-
模糊插叙
select * from table_name where like 字段名='%xxx';
-
排序(关键字:order by。asc(升序,默认)。desc(降序))
#升序 select * from table_name order by age asc; #降序 select * from table_name order by age desc;
-
内连接
#方言 select * from table1_name 别名1,table2_name 别名2 where 别名1.xxx=别名2.xxx; #标准 select * from table1_name 别名 inner join table2_name 别名 on 别名1.xxx=别名2.xxx; #自然 select * from table1_name 别名1 natural join table2_name 别名 on 别名1.xxx=别名2.xxx;
-
外连接
#左外连接 select * from table1_name 别名1 left join table2_name 别名2 on 别名1.xxx=别名2.xxx; #右外连接 select * from table1_name 别名1 right join table2_name 别名2 on 别名1.xxx=别名2.xxx;
-
子查询
#where型 select * from table_name where = (子查询); #from型 select * from (子查询) 别名 where 条件; #exists型 select * from table_name where in(子查询);
-
删除字段
alter table table_name drop 字段;
-
添加再短
alter table table_name add 字段名 字段类型;
-
修改字段
#方法1 alter table table_name modify 字段名 字段类型; #方法2 alter table table_name change 要修改的字段 新字段 类型;