python条件表达式三门课至少有一门及格_Python/ MySQL练习题(一)

Python/ MySQL练习题(一)

2、查询“生物”课程比“物理”课程成绩高的所有学生的学号

1 SELECT2 *

3 FROM4 (5 SELECT6 *

7 FROM8 course9 LEFT JOIN score ON score.course_id =course.cid10 WHERE11 course.cname = ‘生物‘

12 ) AS A13 INNER JOIN (14 SELECT15 *

16 FROM17 course18 LEFT JOIN score ON score.course_id =course.cid19 WHERE20 course.cname = ‘物理‘

21 ) AS B ON A.student_id =B.student_id22 WHERE23 A.num > B.num

3、查询平均成绩大于60分的同学的学号和平均成绩

1 SELECT2 B.student_id,3 student.sname,4 B.cc5 FROM6 (7 SELECT8 student_id,9 num,10 avg(num) AS cc11 FROM12 score13 GROUP BY14 student_id15 HAVING16 avg(num) > 60

17 ) AS B18 LEFT JOIN student ON B.student_id = student.sid

4、查询所有同学的学号、姓名、选课数、总成绩

1 SELECT2 student_id,3 student.sname,4 count(score.course_id)as cc,5 sum(num)as cj6 FROM7 student8 LEFT JOIN score ON score.student_id =student.sid9 GROUP BY10 score.student_id

5、查询姓“李”的老师的个数

1 SELECT * from teacher where tname like ‘李%‘

6、查询没学过“李平”老师课的同学的学号、姓名

1 SELECT student.sid,student.sname from student where sid not in

2 (SELECT3 student_id4 FROM5 score6 WHERE course_id IN7 (8 SELECT9 course.cid10 FROM11 course12 LEFT JOIN teacher ON teacher.tid =course.teacher_id13 WHERE14 tname = ‘李平老师‘

15 ) GROUP BY student_id)

7、查询学过“001”并且也学过编号“002”课程的同学的学号、姓名

1 select A.student_id,B.sname FROM (SELECT score.student_id,student.sname,course_id2 from score LEFT JOIN student on student.sid=score.student_id where score.course_id=‘1‘)as A3 LEFT JOIN(SELECT score.student_id,student.sname,course_id4 from score LEFT JOIN student on student.sid=score.student_id where score.course_id=‘2‘)as B5 on A.student_id=B.student_id6 where A.course_id=1 and B.course_id=2;

8、查询学过“李平”老师所教的所有课的同学的学号、姓名

1 SELECT2 student.sid,3 student.sname4 FROM5 student6 WHERE7 student.sid NOT IN (8 SELECT9 student.sname10 FROM11 student12 WHERE13 student.sid IN (14 SELECT15 course.cid16 FROM17 course18 LEFT JOIN teacher ON teacher.tid =course.teacher_id19 WHERE20 teacher.tname = ‘李平老师‘

21 )22 )

9、查询课程编号“002”的成绩比课程编号“001”课程低的所有同学的学号、姓名

1 SELECT2 student.sid,3 student.sname4 FROM5 (6 SELECT7 *

8 FROM9 score10 WHERE11 score.course_id = ‘2‘

12 ) AS A13 LEFT JOIN (14 SELECT15 *

16 FROM17 score18 WHERE19 score.course_id = ‘1‘

20 ) AS B ON A.student_id =B.student_id21 LEFT JOIN student ON student.sid =B.student_id22 WHERE23 A.num < B.num

10、查询有课程成绩小于60分的同学的学号、姓名

1 SELECT2 student.sid,3 student.sname4 FROM5 score6 LEFT JOIN course ON course.cid =score.course_id7 LEFT JOIN student ON student.sid =score.student_id8 WHERE9 score.num < 60

10 GROUP BY11 student_id

11、查询没有学全所有课的同学的学号、姓名

1 SELECT2 student.sid,3 student.sname4 FROM5 student6 WHERE7 student.sid NOT IN (8 SELECT9 student.sid10 FROM11 score12 LEFT JOIN course ON course.cid =score.course_id13 LEFT JOIN student ON student.sid =score.student_id14 GROUP BY15 score.student_id16 HAVING17 count(course_id) =(SELECT COUNT(cid) FROM course)18 )

12、查询至少有一门课与学号为“001”的同学所学相同的同学的学号和姓名

1 SELECT2 *

3 FROM4 score5 LEFT JOIN student on score.student_id =student.sid6 LEFT JOIN course ON course.cid =score.course_id7 WHERE student_id != 1AND8 score.course_id in(9 SELECT10 course_id11 FROM12 score13 WHERE14 student_id = 1

15 )16 GROUP BY student_id

13、查询至少学过学号为“001”同学所选课程中任意一门课的其他同学学号和姓名

1 SELECT student_id from score where student_id!=1 andcourse_id IN2 (select course_id from score where student_id =1GROUP BY course_id)3 GROUP BY student_id

14、查询和“002”号的同学学习的课程完全相同的其他同学学号和姓名

1 SELECT2 student_id,3 sname4 FROM5 score6 LEFT JOIN student ON score.student_id =student.sid7 WHERE8 student_id IN (9 SELECT10 student_id11 FROM12 score13 WHERE14 student_id != 1

15 GROUP BY16 student_id17 HAVING18 count(course_id) =(19 SELECT20 count(1)21 FROM22 score23 WHERE24 student_id = 1

25 )26 )27 AND course_id IN (28 SELECT29 course_id30 FROM31 score32 WHERE33 student_id = 1

34 )35 GROUP BY36 student_id37 HAVING38 count(course_id) =(39 SELECT40 count(1)41 FROM42 score43 WHERE44 student_id = 1

45 )

15、删除学习“李平”老师课的SC表记录

1 DELETE FROM score where score.course_id IN2 (SELECT course_id from course LEFT JOIN teacher on teacher.tid=course.teacher_id3 LEFT JOIN score on score.course_id=course.cid4 LEFT JOIN student on score.student_id=student.sid5 WHERE teacher.tname=‘李平老师‘

6 GROUP BY course_id;)

16、向SC表中插入一些记录,这些记录要求符合以下条件:①没有上过编号“002”课程的同学学号;②插入“002”号课程的平均成绩

1 insert into score (student_id,course_id,num)SELECT student_id,1,FLOOR(avg(num))2 (SELECT student_id from score where course_id !=2

3 SELECT FLOOR(avg(num))from score where course_id = 2)

17、按平均成绩从低到高显示所有学生的“语文”、“数学”、“英语”三门的课程成绩,按如下形式显示: 学生ID,语文,数学,英语,有效课程数,有效平均分

1 select sc.student_id,2 (select num from score left join course on score.course_id = course.cid where course.cname = "生物" and score.student_id=sc.student_id) as sy,3 (select num from score left join course on score.course_id = course.cid where course.cname = "物理" and score.student_id=sc.student_id) as wl,4 (select num from score left join course on score.course_id = course.cid where course.cname = "体育" and score.student_id=sc.student_id) as ty,5 count(sc.course_id),6 avg(sc.num)7 fromscore as sc8 group by student_id desc

18、查询各科成绩最高和最低的分:以如下形式显示:课程ID,最高分,最低分

1 select student_id,MAX(num),MIN(num) from score GROUP BY course_id

19、按各科平均成绩从低到高和及格率的百分数从高到低顺序

1 SELECT2 course_id,3 avg(num) AS nn,4 sum(5 CASE6 WHEN num < 60THEN7 08 ELSE9 1

10 END11 ),12 SUM(1),13 sum(14 CASE15 WHEN num < 60THEN16 017 ELSE18 1

19 END20 ) / SUM(1) AS pj21 FROM22 score23 GROUP BY24 course_id25 ORDER BY26 avg(num) DESC

20、课程平均分从高到低显示(现实任课老师)

1 SELECT score.course_id,course.cname,avg(num),teacher.tname from score LEFT JOIN course on course.cid=score.course_id2 LEFT JOIN teacher on teacher.tid=course.teacher_id3 GROUP BY course_id4

5 HAVING avg(num)6 ORDER BY avg(num) DESC

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/427191.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

window上安装mysql服务核心版(亲测可用)

上次安装服务启动后&#xff0c;这次又准备重新安装&#xff0c;出现了了很多问题 1首先我们还是去官网下载对应的window安装包 2放置在D:\Program Files\mysql下面&#xff0c;没有则新建一个Program Files 3在同路径下E:\Program Files\mysql建立一个my.ini文件 [mysql] 设置…

java添加信息_java – 向异常添加信息

我想向堆栈跟踪/异常添加信息.基本上我现在有这样的东西,我真的很喜欢&#xff1a;Exception in thread "main" java.lang.ArithmeticException: / by zeroat com.so.main(SO.java:41)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect…

python封装模块_Python练手,封装日志模块,v2

前面第1版写好后&#xff0c;很凌乱&#xff0c;主要的问题在于&#xff0c;Python不支持方法重载&#xff0c;想要灵活创建对象&#xff0c;当时的变通办法是&#xff0c;先链式地有选择地设置属性(方法重载的本质就是有选择地设置属性)&#xff0c;再做实例化&#xff0c;这样…

发现了拯救“文献多的一团麻”的工具

Endnotes是一款好的文献管理工具; 可用以收集文献&#xff1b;整理在引用文献时的不知所踪(提前在reference中细化标题)&#xff1b;还有一些在阅读文献时 转瞬即逝的灵感(notes); 使用笔记来自&#xff1a;感谢其悉心编写。 http://blog.sciencenet.cn/blog-484734-367968.htm…

windows安装apache

1打开apache官网http://httpd.apache.org/ 下载win版本 2解压放入D盘D:\Apache24 3修改http.conf,安装路径 端口改成8080&#xff0c;避免占用&#xff0c;原先是80 4http -t检查配置文件合法 5httpd -k install -n apache安装主服务 6net start apache

java语言中的标识符_Java语言基本语法(一)————关键字标识符(Java语言标识符命名规范Java语言的包名、类名、接口名、变量名、函数名、常量名命名规则 )...

一、关键字关键字的定义和特点定义&#xff1a;被Java语言赋予特殊含义&#xff0c;用做专门用途的字符串(单词)。特点&#xff1a;关键字中所有字母均为小写下面列举一些常用的关键字。用于定义数据类型的关键字&#xff1a;byte、short、int、long、float、double、char、boo…

数组的合并和升序排列_leetcode No.31 下一个排列

题目链接&#xff1a;下一个排列 - 力扣&#xff08;LeetCode&#xff09;​leetcode-cn.com题目描述&#xff1a;实现获取下一个排列的函数&#xff0c;算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列&#xff0c;则将数字重新排列成…

公司网络故障那些事(路由器变交换机)

首先这次网络故障是断电引起的 我给大家画个模型 三层的为八口交换机 一层的为五口打印机 笔记本代表两台无线打印机 首先八口的连接了公司采购电脑一台&#xff0c;业务电脑一台&#xff0c;其他电脑三台 第二个五口交换的连接财务电脑两台 最后一个五口交换机连接两台无线打印…

【原创】大公司为什么还在采用过时的技术

背景 本文出自一朋友给我的提问&#xff0c;于是博主呕心沥血给他花式洗脑了几个小时。忽然发现&#xff0c;应该还有许多朋友有同样的疑问。所以整理成文。 许多刚毕业的程序员朋友&#xff0c;都有一个执念&#xff0c;想要进那种规模大一点的公司、上市的、业内有名的最好。…

java 文件上传 配置_SpringMVCMultipartFilefile文件上传及参数接收

一、form表单属性中加上enctype"multipart/form-data"form表单的二、配置文件中配置MultipartResolver文件超出限制会在进入controller前抛出异常&#xff0c;在允许范围内这个配置无影响三、MultipartFile接受文件并通过IO二进制流(MultipartFile.getInputStream())…

list foreach方法_Java集合三兄弟List,Set,Map你分的清楚吗?

前言集合作为Java基础知识的核心部分&#xff0c;不论是在面试还是平时工作中都是经常遇见的。当然面对熟悉的List、Set、Map&#xff0c;面试管的提问一般也都不会从简单的问题出发了&#xff0c;今天就来聊下集合中的高级部分&#xff0c;让你对它们的理解更加清楚。一、List…

centos7.3防火墙配置

Centos7.3防火墙配置 1、查看firewall服务状态 systemctl status firewalld 2、查看firewall的状态 firewall-cmd --state 3、开启、重启、关闭、firewalld.service服务 开启 service firewalld start 重启 service firewalld restart 关闭 service firewalld stop 4、…

SpringBoot使用Jsp

本文是简单总结一下SpringBoot使用Jsp的Demo。 前言 在早期做项目的时候&#xff0c;JSP是我们经常使用的java服务器页面&#xff0c;其实就是一个简化servlet的设计&#xff0c;在本文开始之前&#xff0c;回顾一下jsp的几大对象&#xff0c;如图。 而在现在SpringBoot框架流行…

java 持久_Java持久锁总结 -解道Jdon

并发主题Java与持久相关的锁总结本文总结Java中有关数据库保存持久数据的锁机制&#xff0c;不只是纯粹数据库自身的锁&#xff0c;本文主要就Java持久层三个技术数据库、JPA和Hibernate的锁应用进行了总结。在并发理论中&#xff0c;锁是用于保护可变的共享数据&#xff0c;以…

cacti 监控安装失败

1首先这是基于lnmp模式进行的 2yum安装 yum -y install httpd mysql mysql-server php php-mysql php-json php-pdo 3lib库 yum -y install cairo-devel libxml2-devel pango pango-devel 4 解压rrdtool-1.3.1.tar.gz Cd rrdtool-1.3.1 ./configure --prefix/usr/local/rrdtoo…

project 模板_施工进度横道图不会做?18份计划模板收藏好,输入参数迅速成图...

施工进度横道图不会做&#xff1f;18份计划模板收藏好&#xff0c;输入参数迅速成图作为施工组织设计的关键内容&#xff0c;施工进度计划控制了工程施工进度、工程施工期限等各项施工活动。进度计划是否合理&#xff0c;直接影响施工速度、成本和质量。因此施工中的其他工作必…

JavaScript学习系列3 -- JavaScript arguments对象学习

在实际项目开发中&#xff0c;目前还是很少使用到JavaScript 中的arguments对象&#xff0c;那么它到底是干什么用的呢 arguments是JavaScript中的一个类数组对象&#xff0c;它代表传给一个正在执行的函数function的参数列表。 看完这个定义&#xff0c;需要明白&#xff0c…

二叉树垂直遍历 java_【004】二叉树垂直遍历

二叉树垂直遍历题目描述输入输出示例输入实例输出DFSBFS更简单的方法二叉树垂直遍历题目描述对于一个二叉树&#xff0c;输出它的垂直遍历结果&#xff1b;对于同一列的节点&#xff0c;按照从左向右&#xff0c;从上向下的顺序排列。例如&#xff0c;对于以下二叉树&#xff1…

matlab二元一次方程求解_2-函数的求解计算

一、本期介绍函数的求解有两种&#xff08;1&#xff09;已知x求y&#xff08;2&#xff09;已知y求x1.1已知x求y回想我们上一期&#xff0c;讲了多项式求解的方法&#xff0c;也是已知x求y。想一下&#xff0c;多项式不也是函数的一种吗&#xff0c;所以本期求解的方法同样适用…

linux lnmp yum版安装

LAMP&#xff08;linux、apache、mysql、php&#xff09;&#xff0c;是四个套件的合成&#xff0c;简单讲就是要把php运行在linux上&#xff0c;需要依赖apache和mysql数据库。 1 准备好一个linux系统&#xff08;centos7&#xff09;   确保selinux、firewall已经关闭   …