PTA - 数据库合集1

这篇具有很好参考价值的文章主要介绍了PTA - 数据库合集1。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

10-55 查询各专业学生的平均成绩 

分数 10 作者 张庆单位 集美大学

本题目要求编写SQL语句,
统计各专业的学生选课的平均成绩,如果某专业尚未有任何学生选修课程或成绩为空时,平均分计为0。输出结果集按照major表中的mno升序排序。

表结构:

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `major` (
  `mno` char(2) NOT NULL,
  `mname` varchar(20) NOT NULL,
  PRIMARY KEY (`mno`)
);
CREATE TABLE `stu` (
  `sno` char(4) NOT NULL,  -- 学号
  `sname` char(8) NOT NULL,  -- 姓名
  `sex` tinyint(1) DEFAULT NULL,  -- 性别
  `mno` char(2) DEFAULT NULL,  -- 专业号
  `birdate` datetime DEFAULT NULL,  -- 出生日期
  `memo` text,  --  备注
  PRIMARY KEY (`sno`),
    CONSTRAINT `fk_stu_mno` FOREIGN KEY (`mno`) REFERENCES `major` (`mno`)
);
CREATE TABLE `sc` (
  `sno` char(4) NOT NULL,
  `cno` char(4) NOT NULL,
  `grade` decimal(6,1) DEFAULT NULL,
  PRIMARY KEY (`sno`,`cno`),
  CONSTRAINT `fk_sc_sno` FOREIGN KEY (`sno`) REFERENCES `stu` (`sno`)
);

表样例

请在这里给出上述表结构对应的表样例。例如

major表:

PTA - 数据库合集1

stu表:

PTA - 数据库合集1

sc表:

PTA - 数据库合集1

输出样例:

请在这里给出输出样例。例如:

PTA - 数据库合集1

SELECT 
    mname 专业,ifnull(avg(grade),0)平均成绩
FROM    
    major left outer 
JOIN(
    SELECT 
        mno,grade
    FROM
        stu,sc 
    WHERE
        stu.sno=sc.sno)AS a 
    ON 
        major.mno=a.mno
GROUP BY 
    major.mno
ORDER BY
    major.mno;

 10-57 查询没有选修'C语言'课程的学生

本题目要求编写SQL语句,
检索出没有选修'C语言'课程的学生记录,输出结果集按照学号升序排序。

要求使用not exist语句实现。

表结构:

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `stu` (
  `sno` char(4) NOT NULL,
  `sname` char(8) NOT NULL,
  `sex` tinyint(1) DEFAULT NULL,
  `mno` char(2) DEFAULT NULL,
  `birdate` datetime DEFAULT NULL,
  `memo` text,
  PRIMARY KEY (`sno`)
);
CREATE TABLE `cou` (
  `cno` char(4) NOT NULL,
  `cname` varchar(30) NOT NULL,
  `credit` smallint(6) DEFAULT NULL,
  `ptime` char(5) DEFAULT NULL,
  `teacher` char(10) DEFAULT NULL,
  PRIMARY KEY (`cno`)
) ;
CREATE TABLE `sc` (
  `sno` char(4) NOT NULL,
  `cno` char(4) NOT NULL,
  `grade` decimal(6,1) DEFAULT NULL,
  PRIMARY KEY (`sno`,`cno`),
  CONSTRAINT `fk_sc_cno` FOREIGN KEY (`cno`) REFERENCES `cou` (`CNO`),
  CONSTRAINT `fk_sc_sno` FOREIGN KEY (`sno`) REFERENCES `stu` (`sno`)
);

表样例

请在这里给出上述表结构对应的表样例。例如

stu表:

PTA - 数据库合集1

cou表:

PTA - 数据库合集1

sc表:

PTA - 数据库合集1

输出样例:

请在这里给出输出样例。例如:

PTA - 数据库合集1

SELECT 
    sno 学号,sname 姓名
FROM 
    stu
WHERE NOT exists
    (
        select * from sc,cou where stu.sno = sc.sno and sc.cno = cou.cno and cname = 'C语言'
    )
order by 
    stu.sno

 10-62 查询平均成绩以上的课程

本题目要求编写SQL语句,
查询每个同学超过他选修的平均成绩的课程。

请使用:
1)用相关子查询实现
2)使用派生表实现。

表结构:

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `cou` (
  `cno` char(4) NOT NULL,
  `cname` varchar(30) NOT NULL,
  `credit` smallint(6) DEFAULT NULL,
  `ptime` char(5) DEFAULT NULL,
  `teacher` char(10) DEFAULT NULL,
  PRIMARY KEY (`cno`)
)

CREATE TABLE `sc` (
  `sno` char(4) NOT NULL,
  `cno` char(4) NOT NULL,
  `grade` decimal(6,1) DEFAULT NULL,
  PRIMARY KEY (`sno`,`cno`),
  CONSTRAINT `fk_sc_cno` FOREIGN KEY (`cno`) REFERENCES `cou` (`CNO`),
);

表样例

请在这里给出上述表结构对应的表样例。例如

cou表:

PTA - 数据库合集1

sc表:

PTA - 数据库合集1

输出样例:

请在这里给出输出样例。例如:

PTA - 数据库合集1

SELECT 
    sno 学号,cname 课程名,grade 成绩
FROM 
    cou,sc a 
WHERE
    cou.cno = a.cno 
AND
    (a.grade > (SELECT avg(b.grade) FROM sc b WHERE a.sno = b.sno))

10-64 查询成绩最高的前三名同学

本题目要求编写SQL语句,
查询‘C语言’课程成绩最高的前三名同学。

提示:使用"limit n"语句实现 "top n" 。

表结构:

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `stu` (
  `sno` char(4) NOT NULL,
  `sname` char(8) NOT NULL,
  `sex` tinyint(1) DEFAULT NULL,
  `mno` char(2) DEFAULT NULL,
  `birdate` datetime DEFAULT NULL,
  `memo` text,
  PRIMARY KEY (`sno`)
);
CREATE TABLE `cou` (
  `cno` char(4) NOT NULL,
  `cname` varchar(30) NOT NULL,
  `credit` smallint(6) DEFAULT NULL,
  `ptime` char(5) DEFAULT NULL,
  `teacher` char(10) DEFAULT NULL,
  PRIMARY KEY (`cno`)
);
CREATE TABLE `sc` (
  `sno` char(4) NOT NULL,
  `cno` char(4) NOT NULL,
  `grade` decimal(6,1) DEFAULT NULL,
  PRIMARY KEY (`sno`,`cno`),
  CONSTRAINT `fk_sc_cno` FOREIGN KEY (`cno`) REFERENCES `cou` (`CNO`),
  CONSTRAINT `fk_sc_sno` FOREIGN KEY (`sno`) REFERENCES `stu` (`sno`)
);

表样例

请在这里给出上述表结构对应的表样例。例如

stu表:

PTA - 数据库合集1

cou表:

PTA - 数据库合集1

sc表:

PTA - 数据库合集1

输出样例:

请在这里给出输出样例。例如:

PTA - 数据库合集1

SELECT 
    sname '姓名',grade '成绩'
FROM 
    stu,sc,cou 
WHERE
    (
        sc.cno = cou.cno AND cname = 'C语言' AND sc.sno = stu.sno
    ) 
ORDER BY 
    grade desc 
LIMIT 
    3

10-66 查询选修张老师讲授所有课程的学生

本题目要求编写SQL语句,
查询选修了张老师所讲授的所有课程的学生。

表结构:

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `stu` (
  `sno` char(4) NOT NULL,
  `sname` char(8) NOT NULL,
  `sex` tinyint(1) DEFAULT NULL,
  `mno` char(2) DEFAULT NULL,
  `birdate` datetime DEFAULT NULL,
  `memo` text,
  PRIMARY KEY (`sno`)
);
CREATE TABLE `cou` (
  `cno` char(4) NOT NULL,
  `cname` varchar(30) NOT NULL,
  `credit` smallint(6) DEFAULT NULL,
  `ptime` char(5) DEFAULT NULL,
  `teacher` char(10) DEFAULT NULL,
  PRIMARY KEY (`cno`)
);

CREATE TABLE `sc` (
  `sno` char(4) NOT NULL,
  `cno` char(4) NOT NULL,
  `grade` decimal(6,1) DEFAULT NULL,
  PRIMARY KEY (`sno`,`cno`),
  CONSTRAINT `fk_sc_cno` FOREIGN KEY (`cno`) REFERENCES `cou` (`CNO`),
  CONSTRAINT `fk_sc_sno` FOREIGN KEY (`sno`) REFERENCES `stu` (`sno`)
);

表样例

请在这里给出上述表结构对应的表样例。例如

stu表:

PTA - 数据库合集1

cou表:

PTA - 数据库合集1

sc表:

PTA - 数据库合集1

输出样例:

请在这里给出输出样例。例如:

PTA - 数据库合集1

SELECT 
    sname
FROM 
    stu
WHERE NOT exists
    (select * 
    from cou
    where not exists
    (select *
    from sc 
    where sc.sno=stu.sno and sc.cno=cou.cno) and cou.teacher = '张老师')

10-70 检索部分教师并插入新表 

本题目要求编写 Insert语句,
检索所授每门课程平均成绩均大于70分的教师姓名,并将检索的值插入一个新的教师表faculty表

表结构:

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `cou` (
  `cno` char(4) NOT NULL,
  `cname` varchar(30) NOT NULL,
  `credit` smallint(6) DEFAULT NULL,
  `ptime` char(5) DEFAULT NULL,
  `teacher` char(10) DEFAULT NULL,
  PRIMARY KEY (`cno`)
)

CREATE TABLE `sc` (
  `sno` char(4) NOT NULL,
  `cno` char(4) NOT NULL,
  `grade` decimal(6,1) DEFAULT NULL,
  PRIMARY KEY (`sno`,`cno`),
  CONSTRAINT `fk_sc_cno` FOREIGN KEY (`cno`) REFERENCES `cou` (`CNO`)
);

CREATE TABLE `faculty` (
  `tname` char(10) DEFAULT NULL
)

表样例

请在这里给出上述表结构对应的表样例。例如

cou表:

PTA - 数据库合集1

sc表:

PTA - 数据库合集1

输出样例:

教师表faculty表,如下:

PTA - 数据库合集1

INSERT INTO 
    faculty
SELECT 
    teacher tname
FROM 
    cou c1
WHERE 
    cno 
IN 
    (select cno from sc group by cno having avg(grade) > 70)
GROUP BY 
    teacher
HAVING 
    COUNT(*) = (select count(*) from cou c2 where c1.teacher = c2.teacher)

 10-72 单表查询:根据运费查询订单信息

订单表(orders)中找出运费(Freight)1050之间的订单编号(OrderID)顾客编号(CustomerID)职员编号(EmployeeID)

表结构:

列名 数据类型 长度 主码 说明
OrderID int 11 订单编号
CustomerID varchar 5 顾客编号
EmployeeID int 11 员工编号
OrderDate datetime, 订购日期
RequiredDate datetime, 预计到达日期
ShippedDate datetime, 发货日期
ShipVia int 11 运货商
Freight decimal 10,4 运费
ShipName varchar 40 货主姓名
ShipAddress varchar 60 货主地址
ShipCity varchar 15 所在城市
ShipRegion varchar 15 区域
ShipPostalCode varchar 10 邮政编码
ShipCountry varchar 15 所在国家

表样例

orders表:

orderid customerid employeeid
11068 QUEEN 8
10466 COMMI 4
10256 WELLI 3
10485 LINOD 4
10498 HILAA 8
10523 SEVES 7
10577 TRAIH 9
10501 BLAUS 9
10590 MEREP 4

输出样例:

orderid customerid employeeid
11068 QUEEN 8
10466 COMMI 4
10256 WELLI 3
10485 LINOD 4
SELECT 
    orderid,customerid,employeeid
FROM 
    orders
WHERE 
    Freight BETWEEN 10 AND 50
order by orderid desc;

10-74 修改学生选课成绩 

本题目要求编写UPDATE语句,
SC表中修改‘C001’课程的成绩,若成绩小于70分则提高5%,若成绩在70分以上(含70分)则提高4%

表结构:

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `sc` (
  `sno` char(4) NOT NULL,
  `cno` char(4) NOT NULL,
  `grade` decimal(6,1) DEFAULT NULL,
  PRIMARY KEY (`sno`,`cno`)
)

表样例

请在这里给出上述表结构对应的表样例。例如

sc表:

PTA - 数据库合集1

输出样例:

修改成绩后,sc表如下:

PTA - 数据库合集1

UPDATE
    sc
SET
    grade = case
    WHEN sc.grade < 70  THEN grade * 1.05
    WHEN sc.grade >= 70 THEN grade * 1.04
    ELSE grade
    END
WHERE 
    cno = 'C001';

10-75 添加成绩等级rank字段 

本题目要求编写UPDATE语句,
填写SC表中的成绩等级rank字段,按60分以下为E,60-69为D,70-79为C,80-89为B,90及以上为A,其它情况为NULL。

表结构:

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `sc` (
  `sno` char(4) NOT NULL,
  `cno` char(4) NOT NULL,
  `grade` decimal(6,1) DEFAULT NULL,
  `rank` char(255) DEFAULT NULL,
  PRIMARY KEY (`sno`,`cno`)
)

表样例

请在这里给出上述表结构对应的表样例。例如

sc表:

PTA - 数据库合集1

输出样例:

填写rank字段后,sc表如下:

PTA - 数据库合集1

UPDATE
    sc
SET
    rank = case
    WHEN sc.grade < 60 THEN 'E'
    WHEN sc.grade >= 60 and sc.grade < 70 THEN 'D'
    WHEN sc.grade >= 70 and sc.grade < 80 THEN 'C'
    WHEN sc.grade >= 80 and sc.grade < 90 THEN 'B'
    WHEN sc.grade >= 90 THEN 'A'
    ELSE NULL
    END

 10-93 spj-查找在同一个城市的所有工程项目

本题目要求编写SQL语句,在SPJ数据库中,查找在同一个城市的所有工程项目jname,输出结果集以城市名city升序排序, 城市 名相同的再以工程项目jname升序排序。

提示:请使用SELECT语句作答。

表结构:

请在这里写定义表结构的SQL语句。例如:


CREATE TABLE  j  (  -- 工程项目表
   jno  char(3) NOT NULL,  -- 工程项目号
   jname  nvarchar(10) DEFAULT NULL,
   city  nvarchar(10) DEFAULT NULL,
  PRIMARY KEY ( jno )
) ;
CREATE TABLE  p  (  -- 零件表
   pno  char(3) NOT NULL,  -- 零件号
   pname  nvarchar(10) DEFAULT NULL,
   color  nchar(2) DEFAULT NULL,
   weight  smallint DEFAULT NULL,
  PRIMARY KEY ( pno )
) ;
CREATE TABLE  s  ( -- 供应商表
   sno  char(3) NOT NULL,  -- 供应商号
   sname  nvarchar(10) DEFAULT NULL,
   status  char(2) DEFAULT NULL,
   city  nvarchar(10) DEFAULT NULL,
  PRIMARY KEY ( sno )
) ;
CREATE TABLE  spj  (  -- 零件供应表
   sno  char(3) NOT NULL,
   pno  char(3) NOT NULL,
   jno  char(3) NOT NULL,
   qty  smallint DEFAULT NULL,
  PRIMARY KEY ( sno , pno , jno ),
  CONSTRAINT  fk_jno  FOREIGN KEY ( jno ) REFERENCES  j  ( jno ),
  CONSTRAINT  fk_pno  FOREIGN KEY ( pno ) REFERENCES  p  ( pno ),
  CONSTRAINT  fk_sno  FOREIGN KEY ( sno ) REFERENCES  s  ( sno )
);

表样例

请在这里给出上述表结构对应的表样例。例如

s表:

PTA - 数据库合集1

p表:

PTA - 数据库合集1

j表:

PTA - 数据库合集1

spj表:

PTA - 数据库合集1

输出样例:

请在这里给出输出样例。例如:

PTA - 数据库合集1文章来源地址https://www.toymoban.com/news/detail-421350.html

SELECT 
    city,jname 
FROM    
    j
WHERE 
    city
IN
    (
    SELECT 
        city FROM j
    GROUP BY 
            city
    HAVING 
            COUNT(city)>1
    )
ORDER BY 
    city ASC,jname ASC

到了这里,关于PTA - 数据库合集1的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE

    思维导图: 常见服务的安全测试: 服务安全流程: 案例一:Mysql-未授权访问-CVE-2012-2122 利用 案例二: Hadoop-未授权访问-内置配合命令执行 RCE 案例三:Redis-未授权访问-Webshell任务密匙RCE 等 写入webshell  写入计划任务反弹shell ssh密钥链接 ​编辑利用自动化脚本去getshell redi

    2024年04月27日
    浏览(37)
  • smartsofthelp 5.0 最专业的数据库优化工具,数据库配置优化,数据库高并发优化,SQL 语句优化...

      下载地址:百度网盘 请输入提取码 SQL操作返回历史记录: 2023-08-21 20:42:08:220  输入:select @@version as 版本号 2023-08-21 20:42:08:223  输出:当前数据库实例版本号:Microsoft SQL Server 2012 - 11.0.2100.60 (X64)      Feb 10 2012 19:39:15      Copyright (c) Microsoft Corporation     Developer Edition (

    2024年02月12日
    浏览(56)
  • 数据库毕业设计参考文献最新合集

    随着国民经济的飞速发展,信息管理系统在各行各业的应用不断融合深化,但伴随而来的安全风险也在持续增加.数据库系统作为信息管理系统的核心部分,它的安全直接关系到整个信息管理系统的安全.下面是搜素整理的数据库毕业设计参考文献,供大家阅读指正。 数据库毕业设

    2024年02月07日
    浏览(42)
  • 126个专业心理测试系统ACCESS数据库

    今天这份数据库是从一个心理测试软件破解出来的一系列的心理自量表,人格自量表以及精神病自量表等量化心理测试表,适用于医院、学校、职场等机构进行心里咨询,并且可以进行诊断测试。 【续后:原150个测试项目经过第二次整理检查去除无效数据仅有126个测试项目,

    2024年02月07日
    浏览(52)
  • 网络安全全栈培训笔记(55-服务攻防-数据库安全&Redis&Hadoop&Mysqla&未授权访问&RCE)

    知识点: 1、服务攻防数据库类型安全 2、RedisHadoopMysql安全 3、Mysql-CVE-2012-2122漏洞 4、Hadoop-配置不当未授权三重奏RCE漏洞 3、Redis-配置不当未授权三重奏RCE两漏洞 #章节内容: 常见服务应用的安全测试: 1、配置不当-未授权访问 2、安全机制特定安全漏洞 3、安全机制弱口令爆

    2024年01月23日
    浏览(45)
  • 复试专业前沿问题问答合集10-1——区块链与加密货币

    区块链与加密货币安全以及6G通信的基础知识问答: 区块链以及加密货币相关的基础安全知识 包括区块链如何确保交易安全、共识机制的作用、加密货币钱包的保护措施、智能合约的工作原理以及如何防范潜在的网络攻击。这些知识对于理解和使用区块链技术和加密货币至关

    2024年03月26日
    浏览(46)
  • 数据库原理-数据查询 单表查询【二】

    聚集函数: 统计元组个数 COUNT(*) 统计一列中值的个数 COUNT([DISTINCT|ALL]列名) 计算一列值的总和(此列必须为数值型) SUM([DISTINCT|[ALL]列名) 计算一列值的平均值(此列必须为数值型) AVG([DISTINCT|ALL]列名) 求一列中的最大值和最小值 MAX([DISTINCT|ALL]列名) MIN([DISTINCT|ALL]列名) 查询学

    2024年02月03日
    浏览(45)
  • 大学数据库创建与查询实战——查询

    目录 查询表中指定的字段   查询表中的某一个字段的语法格式为: (一) (二)  GROUP BY 子句 (三) ORDER BY :对查询结果进行排序: 头歌实验 (四) (五)   查询表中的某一个字段的语法格式为: SELECT 列名 FROM 表名 ; 不同字段名称之间用逗号“,”分隔开,最后一

    2024年02月10日
    浏览(45)
  • 数据库的简单查询——单表查询

    本篇文章主要是数据库的一些简单查询,包括条件查询,模糊查询,分组查询等 准备工作:三张数据表                学生表(student):                            课程表(course):          学生选课表(sc):     (1)查询学生表中全体学生的所有信息。 SQL语句:

    2023年04月11日
    浏览(45)
  • java查询数据库百万条数据,优化之:多线程+数据库

    今天去面试时hr问了个关于大量数据查询的问题。 面试官:“我们公司是做数据分析的,每次需要从数据库中查询100万条数据进行分析,该接口不能用分页(不限制具体怎么实现),请问怎么优化sql或者java代码呢??” 如果用普通查询需要5分多分钟才查询完毕,所以我们用

    2024年02月15日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包