--1、查询“1001”课程比“1002”课程成绩高的所有学生的学号;select a.S# from (select S#,score from sc where C#=1001) a, (select S#,score from sc where C# = 1002) b where a.score>b.score and a.s#=b.s#;--2、查询平均成绩大于60分的同学的学
mysql经典sql笔试题百度云:表含数据 提取码:9psfMysql 版本 5.7.131、查询“01”课程比“02”课程成绩高的所有学生的学号和姓名:select * from student where sid in
(select s1.sid from (select * from sc where cid="01")s1
left join (select * from sc
SQL练习2、查询“生物”课程比“物理”课程成绩高的所有学生的学号;select * from
(select * from score where course_id = 1) as s1
inner join
(select * from score where course_id = 2) as s2
on s1.student_id=s2.student_id
1、查询“生物”课程比“物理”课程成绩高的所有学生的学号;select * from(
(select * from score where course_id in (select cid from course where cname = '生物')) t1
left join
(select * from score where course_id in (select cid fr
Student(S#,Sname,Sage,Ssex) 学生表
Course(C#,Cname,T#) 课程表
SC(S#,C#,score) 成绩表
Teacher(T#,Tname) 教师表
问题:
1、查询“001”课程比“002”课程成绩高的所有学生的学号;
select a.S# from
(select s#,score from SC where C#='001') a,
(sel
-- 1、查询"01"课程比"02"课程成绩高的学生的信息及课程分数SELECT A.s_id,A.s_score
FROM (SELECT * FROM score WHERE c_id=1) A,
(SELECT * FROM score WHERE c_id=2 ) B
WHERE A.s_id=B.s_id
AND A.s_score>B.s_score;-- 2、查询平均成绩大
MySQL经典50题1、#1、查询“01”课程比“02”课程成绩高的所有学生的学号;
SELECT s1.sid
FROM SC s1 JOIN SC s2 ON s1.sid=s2.sid AND s1.cid='01' AND s2.cid='02' AND s1.score>s2.score 2、#2、查询平均成绩大于60分的同学的学号和平均成绩;
SELECT sid as 学号,
sql部分:**1、查询“001”课程比“002”课程成绩高的所有学生的学号;
select a.Sid from (select Sid,score from SC where Cid='001') a,(select Sid,score from SC where Cid='002') b where a.score>b.score and a.Sid=b.Sid;
2、
下列是各表的详情,不想自己建表的同学可以直接copy code,数据随意。创建表成绩详情表:CREATE TABLE score (id int(10) NOT NULL AUTO_INCREMENT,subject_id int(10) DEFAULT NULL,student_id int(10) DEFAULT NULL,score float DEFAULT NULL,PRIMARY KE
name like'--'名字是两个字的;like'%张'名字姓张的插入语句:insert into 表 values ('Z001','大胜教育',null,'淄博',null);修改语句 update 表 set 售价=售价*(1.05) (目的) where 出版社 = '科学出版社'(条件)删除语句:delete from 表&nbs
以mysql为例,汇总sql查询最高分、最低分、平均分等sql语句,oracle语法类似,可自行修改以下sql语句创建两个数据库表,一个学生表、一个考试成绩表DROP TABLE IF EXISTS `score`;
CREATE TABLE `score` (
`u_id` varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci NUL
转载
2023-08-31 06:48:42
1244阅读
以这几张表为例: 分组后需要用Having,不能用where2.查询平均成绩大于60分的同学的学号和平均成绩;
SELECT sid,AVG(score) avg
FROM sc
GROUP BY sid
HAVING avg > 60;DISTINCT去重SELECT s.sid,s.sname,COUNT(DISTINCT cid),SUM(score)Right join右连接会
承接上篇,MARK一下多表查询。 有个常犯的错误要特别注意: 完全相同, 不是In 而是not in的思路,详见第7题。 -- 多表查询:
-- 1.查询平均成绩大于85的所有学生的学号、姓名和平均成绩
-- 2表查询+返回值(原始字段+计算值)
-- 两表查询:student, sc;返回值:s.sid,s.sname.avg(sc.score)
-- note: 筛选
insert into Course values ('9-888','高等数学','831');
#---------------Teacher--添加信息----
insert into Teacher values ('804','李成','男','1958-09-01','副教授','计算机系');
insert into Teacher values ('856','张旭','男','1
21、查询不同老师所教不同课程平均分从高到低显示思路,也就是每个老师所教课程的平均分,那么以老师表为主表,关联课程表,因为关联的课程表是条件匹配,所以直接用inner join,课程表关联分数表,也是条件匹配,直接关联,用inner join,注意,分组的时候,题目说的是不同老师、不同课程、那么分组就要是: 老师id、课程id、课程名(因为可能出现课程id不一样,但课程名一样)SELECT
t.
转载
2023-09-20 09:04:53
1465阅读
一、 简单查询1. 查询姓‘猴’的学生名单
select *
from student
where 姓名 like '猴%';
2. 查询姓名中最后一个字是‘猴’的学生名单
select *
from student
where 姓名 like '%猴';
3. 查询姓名中带‘猴’的学生名单
select *
from student
where 姓名 like '%猴%';
4. 查询姓‘孟’的
转载
2023-06-29 10:26:29
4680阅读
# 实现 MySQL 平均分查询教程
## 整体流程
为了实现 MySQL 平均分查询,我们需要按照以下步骤进行操作:
| 步骤 | 操作 |
| ---- | ---- |
| 1 | 连接到 MySQL 数据库 |
| 2 | 编写 SQL 查询语句 |
| 3 | 执行查询并计算平均分 |
## 具体操作
### 步骤1:连接到 MySQL 数据库
首先,我们需要连接到 MySQ
GROUP BY根据给定数据列的每个成员对查询结果进行分组统计,最终得到一个分组汇总表
注意:select子句中的列名必须为分组列或列函数,列函数对于group by子句定义的每个组返回一个结果GROUP BY子句之后使用HAVING子句,HAVING过滤组可应用限定条件进行分组,以便系统仅对满足条件的组返回结果。因此,在GROUP BY子句后面包含了一个HAVING子句。HAVING类似于WHE
转载
2023-06-07 21:32:00
185阅读
一,有这样一张学生成绩表如图,按要求完成操作.1.根据上图格式,在数据库中创建一个学生成绩表,并添加数据.使用sql语句完成. 2.查询每个人的总成绩并按从高到低排名(要求显示字段:姓名,总成绩,学号) 3.查询每个人的平均成绩(要求显示字段: 学号,姓名,平均成绩) 4.查询各门课程的平均成绩(要求显示字段:课程,平均成绩) 5.查询学生数学成绩的排名,从高到低显示(要求显示字段:学号,姓名,成
1.查询Score表中成绩在60到80之间的所有记录SELECT * from SCORE
where degree>60 and degree<80;2.查询 score 表中成绩为85,86或88的记录select * from SCORE
where degree in (85,86,88);3.以 cno 升序、degree降序查询 score 表的所有记录select * f