数据库系统头歌实验一 SQL的DDL语言和单表查询

这篇具有很好参考价值的文章主要介绍了数据库系统头歌实验一 SQL的DDL语言和单表查询。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第1关:创建供应商表S(SNO,SNAME,STATUS,CITY)

供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成;S表如下

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
CREATE TABLE S(
	SNO char(10),
	SNAME char(10),
	STATUS char(10),
	CITY char(10)
);

INSERT INTO S VALUES ('S1', '精益', '20', '天津');
INSERT INTO S VALUES ('S2', '盛锡', '10', '北京');
INSERT INTO S VALUES ('S3', '东方红', '30', '北京');
INSERT INTO S VALUES ('S4', '丰泰盛', '20', '天津');
INSERT INTO S VALUES ('S5', '为民', '30', '上海');

########## End ##########
#以下代码禁止删除
SELECT * FROM S;

第2关:将P表中的所有红色零件的重量增加6。

零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;

P表如下:

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
UPDATE P
SET WEIGHT=WEIGHT+6
WHERE COLOR='红';

########## End ##########
#以下代码禁止删除
SELECT * FROM P;

第3关:把P表中全部红色零件的颜色改成蓝色

零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;

USE mydata;
#请在此处添加实现代码
########## Begin ##########
UPDATE P
SET COLOR='蓝'
WHERE COLOR='红';

########## End ##########
#以下代码禁止删除
SELECT * FROM P;

第4关:将SPJ表中由S5供给J4的零件P6改为由S3供应

供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。

SPJ表如下:

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
UPDATE SPJ
SET SNO='S3'
WHERE SNO='S5'AND PNO='P6'AND JNO='J4';

########## End ##########
#以下代码禁止删除
SELECT * FROM SPJ;

第5关:将SPJ表中所有天津供应商的QTY属性值减少11(用子查询方式)

1、供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成.

2、供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。

S表:

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

SPJ表: 

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
UPDATE SPJ

SET QTY=QTY-11
WHERE SNO IN
 (SELECT SNO
  FROM S
  WHERE CITY='天津');

########## End ##########
#以下代码禁止删除
SELECT * FROM SPJ;

第6关:删除J表中的所有工程项目在天津的记录

工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成。

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
DELETE

FROM J
WHERE CITY='天津';

########## End ##########
#以下代码禁止删除
SELECT * FROM J;

第7关:从SPJ表中删除供应商号是S2的记录

供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
DELETE
FROM SPJ
WHERE SNO='S2';

########## End ##########
#以下代码禁止删除
SELECT * FROM SPJ;

第8关:从SPJ表中删除零件名称为螺丝刀的记录(用子查询方式)

1、零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

2.供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
DELETE
FROM SPJ
WHERE PNO IN
  (SELECT PNO
   FROM P
   WHERE PNAME='螺丝刀');

########## End ##########
#以下代码禁止删除
SELECT * FROM SPJ;

第9关:删除P表中所有的记录

零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
DELETE 
FROM P;

########## End ##########
#以下代码禁止删除
SELECT * FROM P;

第10关:请将(S2,J6,P4,200)插入供应情况关系表SPJ

供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
INSERT
INTO SPJ
VALUES('S2','P4','J6','200');


########## End ##########
#以下代码禁止删除
SELECT * FROM SPJ;

第11关:求供应工程J1零件的供应商号码SNO(注意去重复)

供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT DISTINCT SNO
FROM SPJ
WHERE JNO='J1';

########## End ##########

第12关:求供应工程J1零件P1的供应商号码SNO

供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT DISTINCT SNO
FROM SPJ
WHERE JNO='J1' AND PNO='P1';

########## End ##########

第13关:找出所有供应商的姓名和所在城市

供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成.

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT DISTINCT SNAME,CITY
FROM S;


########## End ##########

第14关:找出所有零件的名称、颜色、重量

零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT DISTINCT PNAME,COLOR,WEIGHT
FROM P;

########## End ##########

第15关:找出使用供应商S1所供应零件的工程号码

供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT DISTINCT JNO
FROM SPJ
WHERE SNO='S1';


########## End ##########

第16关:在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明'

users为选手信息表;

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
INSERT 
INTO users(user_id,name)
VALUES('2019100904','2019-物联网-李明');

########## End ##########
#以下代码禁止删除
SELECT * FROM users WHERE users.user_id = '2019100904';

第17关:在users表中更新用户 user_id为robot_2 的信息,name设为 '机器人二号'

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
UPDATE users
SET name='机器人二号'
WHERE user_id='robot_2';
########## End ##########
#以下代码禁止删除
SELECT * FROM users WHERE users.user_id = 'robot_2';

第18关:将solution表中所有 problem_id 为1003 题目的解答结果(result)设为 6

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
UPDATE solution
SET result=6
WHERE problem_id='1003';

########## End ##########
#以下代码禁止删除
SELECT * FROM solution WHERE solution.problem_id = 1003;

第19关:删除solution表中比赛contest_id 为1001的全部解答

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
DELETE
FROM solution
WHERE contest_id='1001';

########## End ##########
#以下代码禁止删除
SELECT * FROM solution WHERE solution.contest_id = 1001;

第20关:查询所有 contest 的 title 和 end_time。

contest为比赛信息表;

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT title,end_time
FROM contest;


########## End ##########

第21关:查询哪些选手的 user_id 提交过 solution,要求结果中 user_id 不重复

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT DISTINCT user_id
FROM solution;


########## End ##########

第22关:查询 end_time 晚于 '2020-11-21 17:30:00' 的 contest_id

contest为比赛信息表;

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT contest_id
FROM contest
WHERE end_time>'2020-11-21 17:30:00';

########## End ##########

第23关:查询 problem_id 在 1005~1009 之间的 problem 的 title

problem为题目表;

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT title
FROM problem
WHERE problem_id BETWEEN 1005 AND 1009;

########## End ##########

第24关:查询 language 不在 0、1、3 中的 solution 的 code_length

solution:选手提交的题目解答

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT code_length
FROM solution
WHERE language NOT IN('0','1','3');

########## End ##########

第25关:查询2018级选手信息(user_id 为学号的用户前4位为年级)

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT*
FROM users
WHERE user_id LIKE '2018%';

########## End ##########

第26关:查询'生医'专业选手信息(name 中有 '生医' 的选手)

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT*
FROM users
WHERE name LIKE '___生医%';

########## End ##########

第27关:查询不属于任何比赛的solution的 solution_id 和 in_date(contest_id 为 NULL)

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT solution_id,in_date
FROM solution
WHERE contest_id IS NULL;

########## End ##########

第28关:查询 result 为 6 且 problem_id大于1010 的 solution_id与language

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT solution_id,language
FROM solution
WHERE result=6 AND problem_id>1010;

########## End ##########

第29关:查询提交过solution的选手人数

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT COUNT(DISTINCT solution.user_id) 
FROM solution;


########## End ##########

第30关:查询耗内存(memory)最多的solution的内存消耗大小与 solution_id

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT memory,solution_id
FROM solution
WHERE memory IN(
    SELECT MAX(memory)
    FROM solution
);
    
########## End ##########

第31关:查询每个题目的提交数

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT problem_id,COUNT(solution.problem_id)
FROM solution
GROUP BY problem_id;
########## End ##########

第32关:查询提交数大于20的题目的题号

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT problem_id
FROM solution
GROUP BY problem_id
HAVING COUNT(*)>20;

########## End ##########

第33关:查找所有problem_id 为1001 的解答或 contest_id 为空的解答

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明,数据库实验,数据库,sql文章来源地址https://www.toymoban.com/news/detail-725786.html

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT*
FROM solution
WHERE problem_id=1001 OR contest_id IS NULL;

########## End ##########

到了这里,关于数据库系统头歌实验一 SQL的DDL语言和单表查询的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 数据库系统头歌实验八 数据库完整性、安全设计

    第1关:执行 CREATE USER 创建以2022100904为用户名的用户,同时设置其密码为root1234 第2关:给予创建的用户2022100904在mydata数据库中授予\\\"J\\\" 表 SELECT 权限(注意创建权限时的用户名为\\\'用户名\\\'@\\\'localhost\\\'),不允许转授此权限给其它用户。 第3关:给予创建的用户2022100904、2022100908在

    2024年02月05日
    浏览(103)
  • 南京邮电大学数据库实验一(SQL语言)

    (1) 通过上机实践,熟悉Oracle的SQL * Plus环境及使用方法 (2) 掌握SQL语言,能熟练运用SQL语言进行数据定义和数据操纵 (3) 加深对关系数据模型的数据结构和约束的理解 硬件:微型计算机 软件:Windows 操作系统、ORACLE 10G 实验原理基于第二、三、五章的相关内容。 实验内容如下:

    2024年04月27日
    浏览(48)
  • 数据库SQL Server实验报告 之 SQL语言进行简单查询(3/8)

    实验名称          SQL语言进行简单查询 注意:原版word在下载资源里面(免费下载) 实验目的及要求: 掌握各种查询的SQL脚本写法,包括SELECT、FROM、WHERE、GROUP BY、HAVING子句的用法,特别要求比较内连接、外连接的结果 在XSGL数据库中,使用各种查询条件完成指定的查询

    2024年02月02日
    浏览(63)
  • 【数据库 Microsoft SQL Server】实验六 物业收费管理系统数据库设计与实施综合实验

    实验六 物业收费管理系统数据库设计与实施综合实验 一、实验目的 1.掌握数据库概念模型和逻辑模型设计,学会使用数据库规范化理论规范关系模式。 2.熟练掌握和使用SQL语言定义数据库、表、索引和视图等对象。 3.熟练掌握和使用SQL语言完成数据库的完整性和安全性设置

    2024年02月01日
    浏览(55)
  • 数据库深入浅出,数据库介绍,SQL介绍,DDL、DML、DQL、TCL介绍

            数据(Data):文本信息(字母、数字、符号等)、音频、视频、图片等;         数据库(DataBase):存储数据的仓库,本质文件,以文件的形式将数据保存到电脑磁盘中         数据库管理系统(DBMS):管理、操作、维护数据库的软件         数据库应用程序

    2024年02月06日
    浏览(48)
  • mysql 数据库定义语言(DDL)

    目录 库的操作 数据库创建 数据库编码集 数据库删除 数据库修改 数据库查询 数据库备份 表的操作 表的创建 查询表 删除表 修改表 这里先声明一下,这篇文章主要是讲数据库表的定义操作,也就是 DDL,只要是对数据库以及表结构操作的 SQL 数据库的创建,其实在之前我们浅

    2024年02月12日
    浏览(41)
  • Java从入门到精通24==》数据库、SQL基本语句、DDL语句

    2023.8.27 数据库是一个电子化储存数据的系统,它能够以结构化形式组织、存储和管理数据,使得数据的访问、操作和管理变得更为高效、可靠和安全 数据库通常包括数据、数据结构、查询语言、数据存储和检索引擎等多个组成部分,可分为关系型数据库、非关系型数据库等

    2024年02月11日
    浏览(51)
  • 数据库系统概论—标准语言SQL

    1.1基本表的定义、删除与修改 定义基本表 修改基本表 删除基本表 CASCADE:与其相关的全部删除,比如视图,索引等 RESTRICT:如果有依赖关系或是建立索引等,就不删除 但是不同的数据管理系统的执行不同 1.2索引的建立与删除 建立索引 删除索引 基本结构 2.1单表查询 利用上

    2023年04月24日
    浏览(72)
  • 【数据库系统概论】第三章关系数据库标准语言SQL

    1.数据查询: SELECT:用于选择需要查询的列和行。 FROM:用于指定要查询的表。 WHERE:用于指定查询条件。 GROUP BY:用于按照指定的列对结果进行分组。 HAVING:用于指定分组条件。 ORDER BY:用于指定查询结果的排序方式。 2.数据操纵: INSERT INTO:用于将数据插入表中。 UPDAT

    2024年02月08日
    浏览(122)
  • 【教程】MySQL数据库学习笔记(三)——数据定义语言DDL(持续更新)

    写在前面: 如果文章对你有帮助,记得点赞关注加收藏一波,利于以后需要的时候复习,多谢支持! 第一章 《认识与环境搭建》 第二章 《数据类型》 第三章 《数据定义语言DDL》 DDL(Data Definition Language,数据定义语言) 是用于定义和管理数据库对象(如表、视图、索引等

    2024年02月20日
    浏览(45)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包