* 查最高值或者最低值对应行的数据:

查询Score表中的最高分的学生学号和课程号:

两种方法(子查询或者排序):

子查询法:select sno,cno from score where degree = (select max(degree) from score);

分析:

1.查score表中的最高分 select max(degree) from score;

2.查最高分的学号跟课程号 select sno,cno from score where degree = 最高分查询语句;

排序法:select sno,cno from score order by degree desc limit 1;   //按照降序排列,取第一条最大的数据

* 查询Score表中至少有5名学生选修的并以3开头的课程的平均分数:(‘至少’,‘至多’问题)

方法一:select avg(degree) from score where cno like '3%' group by cno having count(*)>=5;

分析:

1.以3开头的课程 cno like "3%"

2.学生选修=》以选修课为组 group by cno having count(sno)>=5

方法二:select avg(degree) from score where cno like '3%' and cno in (select cno from score group by cno having count(sno)>=5);

* 查询至少两名男生的班号

方法一:select class from student where ssex='男' group by class having(ssex)>=2;

方法二:select class from student where ssex='男' and ssex in (select ssex from score group by class having(ssex)>=2);

* 查询成绩比该课程平均成绩低的同学的成绩表(特殊链接,关键字 ‘该’)

思路:

1.查询成绩  select degree from score a where degree<'子查询中的平均成绩';

2.子查询平均成绩  select avg(degree) from score b where b.cno=a.cno; 此表中的课程与父表中的课程一致(必要条件)

3.衔接 select degree from score a where degree<(select avg(degree) from score b where b.cno=a.cno);

mysql中有关查询的技巧方法的更多相关文章

  1. Mysql中分页查询两个方法比较

    mysql中分页查询有两种方式, 一种是使用COUNT(*)的方式,具体代码如下 1 2 3 SELECT COUNT(*) FROM foo WHERE b = 1;   SELECT a FROM ...

  2. 【原创】7. MYSQL++中的查询结果获取(各种Result类型)

    在本节中,我将首先介绍MYSQL++中的查询的几个简单例子用法,然后看一下mysqlpp::Query中的几个与查询相关的方法原型(重点关注返回值),最后对几个关键类型进行解释. 1. MYSQL++ ...

  3. 【面经】面试官:如何以最高的效率从MySQL中随机查询一条记录?

    写在前面 MySQL数据库在互联网行业使用的比较多,有些小伙伴可能会认为MySQL数据库比较小,存储不了很多的数据.其实,这些小伙伴是真的不了解MySQL.MySQL的小不是说使用MySQL存储的数据 ...

  4. mysql中模糊查询的四种用法介绍

    下面介绍mysql中模糊查询的四种用法: 1,%:表示任意0个或多个字符.可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示. 比如 SELECT * FROM [user] ...

  5. mysql中如何查询最近24小时、top n查询

    MySQL中如何查询最近24小时. where visittime >= NOW() - interval 1 hour; 昨天. where visittime between CURDATE ...

  6. kibana中信息分类查询显示的方法

    1.什么是kibana? kibana是ELK(elasticsearch+logstash+kibana)中的K,它是一个可灵活的分析和可视化平台,主要是显示数据以及根据这些数据绘出一些可视化图表, ...

  7. mysql中in查询中排序

    mysql中in查询条件的时候,很多时候排序是不规则的,如何按照in里面的条件进行排序呢? mysql中给出了办法,在in后面加order by field,order by field的首个条件是按 ...

  8. mysql 中合并查询结果union用法 or、in与union all 的查询效率

    mysql 中合并查询结果union用法 or.in与union all 的查询效率 (2016-05-09 11:18:23) 转载▼ 标签: mysql union or in 分类: mysql ...

  9. 下面介绍mysql中模糊查询的四种用法:

    下面介绍mysql中模糊查询的四种用法: 1,%:表示任意0个或多个字符.可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示. 比如 SELECT * FROM [user] ...

随机推荐

  1. opencv计算两个轮廓之间hu矩相似程度,MatchShapes

    https://blog.csdn.net/jiake_yang/article/details/52589063 [OpenCV3.3]通过透视变换矫正变形图像 https://blog.csdn. ...

  2. 时间序列数据库调研之InfluxDB

    基于 Go 语言开发,社区非常活跃,项目更新速度很快,日新月异,关注度高 测试版本 1.0.0_beta2-1 安装部署 wget https://dl.influxdata.com/influxdb ...

  3. Python3 tkinter基础 Menubutton 点击按钮出现下拉菜单

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  4. pandas之时间序列

    Pandas中提供了许多用来处理时间格式文本的方法,包括按不同方法生成一个时间序列,修改时间的格式,重采样等等. 按不同的方法生成时间序列 In [7]: import pandas as pd # ...

  5. CentOS7.x系统中使用Docker时,在存储方面需要注意的问题

    简述: 1.Docker 1.12.6/v17.03文档中CentOS7系统下安装时,明确说明,用于生产时,必须使用devicemapper驱动的direct-lvm模式,需要我们提前准备好块设备,以 ...

  6. IDEA复制某个类的包名路径

    在对应的类中右键: 然后看图:

  7. js的缓存

    无网络的情况下,使用静态资源呈现页面的方法,只有h5的manifest 有网的情况下(可以连接到服务器的情况下),有3种判断缓存的方式. ------------------------------- ...

  8. 路由表flags的U值引起的能ping通网关,ping不通其它网段的案例

    故障的: 正常的: 初步分析: 看路由表的flags ,之前故障时是U.现在正常的是UG查了下说明,应该是这个原因.U — 路由是活动的G — 路由指向网关

  9. scala面试题总结

    一.scala语言有什么特点?什么是函数式编程?有什么优点? 1.scala语言集成面向对象和函数式编程 2.函数式编程是一种典范,将电脑的运算视作是函数的运算. 3.与过程化编程相比,函数式编程里的 ...

  10. git项目远程地址修改后本地如何处理

    今天运维人员为了方便管理,将远程的项目地址给迁移了, 原来是 git@git.lalala.com:yuanlaide/happy.git 变成了 git@git.lalala.com:houlaid ...