一条SQL语句查询所有任务分数都在60以上的用户名字

昨天面试一家公司的笔试题,有两道SQL语句查询错误,回到家进行再想想思路,做一个记录

有两张表:数据是假设的,不是真实的
用户表(user)

任务表(task)

user.id=task.userid

第一道题:用一条SQL语句查询所有任务分数都在60以上的用户名字

SELECT u.name FROM `user` u JOIN task t ON u.id=t.userid GROUP BY u.id HAVING MIN(t.score)>=60;

当时我想到的是用平均数来计算任务的分数,当时不知道我为什么这么想,这样是错的,因为一个分数可以把不到60分的分数拉回来
后面百度了一下,用最小值来做,只要最低分数都能达到60分,那么其他分数肯定都达到60分

第二道题:用一条SQL语句查询一半及以上的任务分数都在60以上的用户名字

SELECT u.name FROM `user` u JOIN task t ON u.id=t.userid WHERE t.score>=60 GROUP BY u.id HAVING COUNT(*)>=COUNT(DISTINCT t.item)/2;


这道题当时没想到怎么做到任务数达到一半以上,也是百度了一下,看到类似的题,可以先算出大于60分的任务数,然后在算出所有任务数的一半是多少,做一个对比就可以了

COUNT(*)代表每个用户任务分数大于60的任务总数
COUNT(DISTINCT t.item)代表是所有任务数的总数

一条SQL语句查询所有任务分数都在60以上的用户名字相关推荐

  1. 数据库:一条sql语句查询每门课程都大于80分的学生姓名

    描述:已知student表有姓名-name,分数-grade,课程-course,它们多对多对多,一条sql语句查询每门课程都大于80分的学生姓名? 分析: ①每门课程,涉及到课程数量统计 SELEC ...

  2. 用一条SQL语句查询出每门课都大于80分的学生姓名

    两道sql题: 1.用一条SQL语句查询出每门课都大于80分的学生姓名. 2.删除除了自动编号不同,其他都相同的学生冗余信息. 第一题数据如下: 分析:每门课都大于80分,就是说学生最低分数要大于80 ...

  3. MySQL一条SQL语句查询多个科目的成绩

    MySQL一条SQL语句查询多个科目的成绩 SELECT pn.name,c.`cname`,SUM(CASE WHEN ps.coid='1' THEN sname END )AS 'domain' ...

  4. 一条SQL语句查询数据库中的所有表、存储过程、触发器

    一条SQL语句查询数据库中的所有表.存储过程.触发器 (sysobjects表信息)   该条语句查询返回所有的用户表 select * from sysobjects where xtype='u' ...

  5. 案例:用一条 SQL 语句查询出每门课都大于 80 分的学生姓名

    用一条sql语句查询出每门课都大于80分的学生姓名 首先需要进行分析: 要查询出每门课程都大于80分的学生姓名,因为一个学生有多门课程,所以会出现下面三种情况. 第一可能所有课程都大于80分. 第二可 ...

  6. select每门可说大于90分_用一条sql语句查询出“每门”课程都大于80分的学生姓名...

    展开全部 首先需要进行分析: 要查询出每门课程都大于80分的学生姓名,因为一个学生有多门课程,所以会出62616964757a686964616fe78988e69d8331333366306534现 ...

  7. 面试高频,一条sql语句查询成绩,显示'优秀' ,'及格' ,'不及格'

    有一张表,里面有3个字段:语文,数学,英语.其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来: 按照要求查询后显示 话不多说 , 直接上 ...

  8. 用一条SQL语句查询出每门课程的成绩都大于80的学生姓名

    -- 用一条SQL语句查询出每门课程的成绩都大于80的学生姓名.Student表如下: -- name course score -- 张三 语文 81 -- 张三 数学 75 -- 李四 语文 76 ...

  9. 一条sql语句查询多个条件的写法

    1.一条sql语句查询多个条件的写法 (1)sql语句的使用 SELECT p1.count1 AS todayAdd,p2.count2 AS todayReturns,p3.count3 AS s ...

最新文章

  1. 解决Android5.0以后DatePicker选择时间无效的bug。
  2. kettle中的switch_Kettle学习笔记(二)— 基本操作
  3. 通过PDO 连接SQL Server
  4. RabbitMQ 消息确认机制confirm代码编写
  5. 操作系统实验报告6:进程间通信—共享内存
  6. springboot如何对本地数据库增删改查_SpringBoot整合Mybatis实现数据库增删改查
  7. c++ ffmpeg内存推流_最简单的基于FFmpeg的AVfilter的例子
  8. 字符编码转换 iconv命令
  9. 计算机应用基础第四版答案周南岳,计算机应用基础周南岳答案.docx
  10. Python 中 appium 环境搭建
  11. 一个非常漂亮的简约大气的table
  12. UML 基本模型元素
  13. 微信公众号网页OAuth2.0授权自动登录(Java版)
  14. js身份证号码,电话号码验证
  15. gazebo中给机器人添加16线激光雷达跑LIO-SAM
  16. 如何开心愉快兴趣满满的学习机器人和人工智能知识并提升思维力
  17. 软件不能用Surface Pro触控笔 微软这有解决办法
  18. 重载和重写的区别。。。。
  19. 【正点原子STM32连载】第四十五章 SD卡实验 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
  20. 欧洲语言共同参考框架 c1,雅思成绩与欧洲语言共同参考框架的对应关系

热门文章

  1. 离谱的布斯法(补码一位乘)
  2. php pdo oracle操作类,一个基于PDO的数据库操作类
  3. ajax防止表单重复提交
  4. P4 Tutorial 安装
  5. 12 模式的模式:复合模式
  6. 来给美剧比个 yeah! ——最最值得一看的科幻
  7. linux bio 描述一段内存,Linux 通用块层 bio 详解
  8. Cadence allegro小技巧总结
  9. 机器学习中数据预处理——标准化/归一化方法(scaler)
  10. 解决docker权限不足问题