MySQL常用语句
心专才能绣得花,心静才能织得麻。书山有路勤为径,学海无涯苦作舟。
库的相关操作:
create database (数据库名); #创建数据库
show databases; #检察已拥有的数据库
use (数据库名) #使用该数据库
show tables; #检察该数据库下已拥有的表
drop database (数据库名); #删除该数据库
表的相关操作:
创建表:
create table (表名)(列名称1 数据范例 约束,列名称2 数据范例 约束,列名称3 数据范例 约束,....); #创建表
检察表的基本信息:
show create table (表名) #检察表的基本信息
desc (表名) #检察表的基本结构
删除表
drop table (表名); #删除该表(可通过日记恢复)
truncate table(表名); #删除该表(不可通过日记恢复)
修改表(用Student演出示)
alter table Student modify Sname varchar(25); #这里修改了Student表Sname的数据范例
alter table Student add Sclass varchar(20); #这里添加了一个Scalss字段
alter table Student drop column(可加可不加) Sclass; #这里把新加的字段进行删除
alter table Student change Sclass Stel varchar(20); #这里把Sclass改名为Stel
alter table Student rename SC; #这里把表名Student改为Sc
插入的顺序题目用
alter table user add age varchar(20) first; #插在第一行
alter table user add sex varchar(20) after (你要插在谁后面);
记录的相关操作:
插入记录(用Student演出示)
insert into Student(Sno,Sname,Sage,Ssex) values("10001","张三",19,"男"); #方法一
insert into Student values("10002","李四",22,"男"); #方法二
insert into Student(Sno,Sname,Sage,Ssex) values("10003","王五",20,"男"),("10004","赵六",21,"男"); #方法三(多条一起添加)
更新(修改)记录
update Student set Sage = 21 where Sno="10001" #把学号为10001的学生年龄改为21
删除记录
delete from Student where Sno = '10001' #把学号为10001的学生的记录删除
delete from Student #删除表中的全部记录
查询记录(这是重点)
普通查询:select (字段名) from (表面);
select name from user;#在user表里面查询name
select name,age from user;#在user表里面查询name,age
select * from user;#查询user表里面的全部信息
去重
select distinct age from user;#去除重复值
条件查询
select * from user where id=2;#查询id为2的信息
select * from user where age between 30 and 40;#查询年龄在30到40岁人的全部信息
select *from user where age =30 or age =40;#查询年龄为30大概40岁的人的全部信息
select *from user where age !=30 ;#查询年龄不等于30岁的人的全部信息 ''也为不等于
select *from user where age in(30,40) ;#查询年龄为30大概40岁的人的全部信息
模糊查询
select *from user where name like '刘%';#查询名字姓氏为刘的全部人的信息
select *from user where name like '%伟%';#查询全部名字带伟的人的信息
升降序查询
select * from user order by age;#按年龄排序(升序)大概在后面加asc
select * from user order by age desc;#按年龄排序(降序)
分页
select * from user limit 5,3;#取前5条记录后面的3条记录的信息
select * from user limit 5;#取前5条记录的信息
分组
select * from user group by age;#查询去除重复的年龄的全部信息(分组)
统计
select count from user; #查询一共有几条数据
取别名
select name as na from user;#给name取别名na并查询他的全部信息
多表查询
select sname ,cname from student inner join cs on student.id = cs.id;#在两张表之间查询(内联)
select student.sname from student left join cs on student.id = cs.id;#左链接 以左边为基准
select student.sname from student right join cs on student.id = cs.id; #右连接 以右边为基准
select *from student where id in (select id from cs);#嵌套查询
select *from student where id in (1,2,3);#和上面结果一样
标签: [数据库]
|