数据库的基本操作

来源:互联网 发布:淘宝德国进口净水器 编辑:程序博客网 时间:2024/06/06 02:24

章一记:mysql数据库的基本操作



创建数据库:

create database db_student;



查看所有数据:

show databases;



创建一个表:

create table achievement(

id int(5) not null auto_increment,

name varchar(255) not null,

sex varchar(255) not null,

class varchar(255) not null,

chinese varchar(255) not null,

math varchar(255) not null,

englist varchar(255) not null,

age varchar(255) not null,

primary key(id)

);



查看表结构:

desc achievement;



插入数据:

insert into achievement(id,name,sex,class,chinese,math,englist,age)values(null,'xiaolong','nan','2','82','75','96','15');



查看表的所有数据:

select * from achievement;



查询指定的字段的数据:

select name,class,chinese,math,englist from achievement;



where条件查询:

select * from achievement where class=1;



select * from achievement where chinese>80;



查找math字段80和90的数据:

select * from achievement where math in(80,90);



查找排除80,90的所有数据:

select * from achievement where math not in(80,90);



范围查询80~100:

select * from achievement where chinese between 80 and 100;



不在80~100的查询范围:

select * from achievement where chinese between 80 and 100;



查询englist为90或math为90或chinese为98的数据:



查询englist为90并math为83的数据:

select * from achievement where englist like 90 and math like 83;



模糊查询

select * from achievement where name like 'xiao%';



排除重复查询:

select distinct class from achievement;



排序,根据chinese进行升序:

asc 为升序,desc为降序

select * from achievement order by chinese asc;



分组查询:group by

单独使用毫无意义

可以将group_concat一起使用

可以跟聚合函数一起使用

可以和having一起使用

根据班级进行分组并查看所有名字

select class,group_concat(name) from achievement group by class;


根据性别进行分组并查询所有名字

select sex,group_concat(name) from achievement group by sex;



查询每个班的总数:

select class,count(name) from achievement group by class;



查询每个班的总人数大于6的:

select class,count(name) from achievement group by class having count(name)> 6;



with_rollup表示后面加一行并进行统计:



分页查询:

select * from achievement limit 0,5;

0代表从第几条开始,5代表查询5条





























































原创粉丝点击