数据库查询

排序查询

mysql中升序asc降序desc

列如:

升序select * from  表名 order by 表中的字段 asc(mysql中默认是升序排序,可不写);

降序:select * from 表名 order by 表中的字段 desc;

若要进行同时一个升序一个降序 列如:

order by 升序 字段asc ,降序字段desc;

按照属性成绩从小到大查询

select * from student order by math;

按照数学成绩从小到大查询

select * from student order by math desc;



分页查询

取除第三条到第六条

select * from  student limit  2,4

查询出数字成绩高到低前两名

select  *  from  student order by math  desc  limit  0 ,2  



分组查询

创建一个订单表

create tableemployee(idint,namevarchar(20),sexvarchar(20),ageint);

insertintoemployeevalues(1,'sunsan','男',18);

insertintoemployeevalues(2,'lisi','男',18);

insertintoemployeevalues(3,'wangwu','女',19);

insertintoemployeevalues(4,'zhaoliu','男',15);

分组查询

select  *  from  employee  group  by sex;


分组查询条件

select   *   from   employee   group  by  sex  having  age > 18;




报表查询

count个数

sum 总数

avg平均数

max最大值

min最小值

统计班级里边有多少学生

select  count(*) from  student;

 统计总成绩大于250分的人数

select count(*) from student  where  (math+english+chinese)>250;

统计班级里边各科总成绩

select sum(math),sum(english), sum (chinese)from student;

 统计一下语文平均成绩

select sum(chinese)/count(*) from student;

select  avg(chinese) from  student;

创建数据库表

constraint 约束

foreign key就是表与表之间的某种约定的关系,由于这种关系的存在,能够让表与表之间的数据,更加的完整,关联性更强

foreign key 语句的式例 foreign keu  references student

创建班级表

create table class(idintprimary key auto_increment,namevarchar(20));

创建学生表

createtablestudent(idintprimarykeyauto_increment,namevarchar(20),sexvarchar(20)class_idint,constraint foreignkey(class_id)referencesclass(id));

 插入班级数据

insert  into  class  values  (1,'ceshiban');

insert  into  class  values(2,'kaifa');

插入学生数据

insert into student values(1,'zhangsan','nan',1);

insert  into  student values(2,'lisi','nan',2);

insert into  student values(3,'jingjing','nan',2);

连表查询


分类:内连接、外连接、交叉连接

 交叉查询

交叉查询,又叫笛卡尔积查询,会将左表和右表的信息,做一个乘积将所有信息查询出来,会产生临时表,比较占用内存,生成的记录数=表1 X表2


 内连接查询

内连接,inner join on 查询两张表,设定条件,将两张表中对应的数据查询出来

不会产生笛卡尔积,不会产生临时表,性能高

左外连接

左外连接 left join on 设定条件,将两张表对应的数据查询出来,同时将左表自己没有关联的数据也查询出来

右外连接

右外连接 right join on 设定条件,将两张表对应的数据查询出来,同时将右表自己没有关联的所有数据查询出来

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、数据库概述 1.为什么软件测试工程师还需要学习数据库以及开发方面的知识? 测试工程师的目的是找出软件的不足,并...
    九樱MOL阅读 1,337评论 0 0
  • 一、数据库概述 1.为什么软件测试工程师还需要学习数据库以及开发方面的知识? 测试工程师的目的是找出软件的不足,并...
    ae1c0a8ab70d阅读 1,171评论 0 0
  • 一、数据库概述 1.为什么软件测试工程师还需要学习数据库以及开发方面的知识? 测试工程师的目的是找出软件的不足,并...
    努力努力更努力阅读 1,009评论 0 0
  • 一、数据库概述 1.为什么软件测试工程师还需要学习数据库以及开发方面的知识? 测试工程师的目的是找出软件的不足,并...
    淅平阅读 1,580评论 0 0
  • 插入数据 全列插入(一一对应)INSERT INTO employee VALUES (2,'李四','男'),(...
    小胡123阅读 2,425评论 0 0

友情链接更多精彩内容