avatar
文章
70
标签
5
分类
2
主页
归档
标签
分类
Crayz's Blog
搜索
主页
归档
标签
分类

Crayz's Blog

实验13 数据库编程-1
发表于2025-01-12|题解
第1关 定义一个名为PROC_COUNT的无参数存储过程 1234567891011121314USE mydata;#请在此处添加实现代码########## Begin ##########DELIMITER $CREATE PROCEDURE PROC_COUNT()BEGIN    SELECT COUNT(*)    FROM J    WHERE JNAME LIKE "%厂%";END $DELIMITER ;CALL PROC_COUNT()########## End ########## 第2关 定义一个名为PROC_JNAME的有参数存储过程 123456789101112131415USE mydata;#请在此处添加实现代码########## Begin ##########DELIMITER $CREATE PROCEDURE PROC_JNAME(IN city CHAR(2))BEGIN    SELECT JNAME    FROM J    WHERE J.CITY = city;END $DELIMITER...
实验12 数据库E-R图设计
发表于2025-01-12|题解
1、注意事项: 1)、先完成实体的关系模型(表),确定实体的主码(尽量单列做主码) 2)、联系的转换: ①1:1的联系 联系合并到某个1端,并在该表中增加另一个实体的码(作为外码,不作为主属性!),以及添加联系本身的属性。 ② 1:n的联系 合并到n端对应的表中,将1端的码添加到n端的表(作为外码,不作为主属性!),以及添加联系本身的属性。 ③m:n的联系 必须增加一个新表,新表的码至少由联系两端实体的码组合而成,同时增加相关的联系属性(如有时间等辅助标识唯一属性,一般应作为主属性)。 3)、课本P232,1:1,1:n联系时,把转换新的关系模式打叉,以后工作时除非很特殊的场景,都不要转换为新的表。ER图的设计虽然理论上是最简关系,但关系型数据库的缺点之一就是表相对较多,多表查询可能时延较大,商用时还可能根据性能降低范式合表(只要业务模型能规避低范式的增删改问题即可)。 4)注意事项:取决于业务建模 ① 联系需要有意义,而不仅是取值约束 ② 联系可能需要新增时间等主属性 ③ 两个实体之间可能存在多种联系 ④ 三元联系之外,依然可能存在两两间联系 ⑤...
实验11 SQL互联网业务查询-2
发表于2025-01-12|题解
第1关 查询某网站每个日期新用户的次日留存率 123456789101112131415161718192021222324252627USE mydata;#请在此处添加实现代码########## Begin ##########with Table_a as(    SELECT        user_id,        MIN(date) date    FROM login    GROUP BY user_id)SELECT    Table_a.date,    ROUND (COUNT(DISTINCT login.user_id)/COUNT(Table_a.user_id),3) pFROM Table_aLEFT JOIN login ON Table_a.user_id = login.user_id AND DATEDIFF(login.date,Table_a.date) = 1GROUP BY Table_a.dateUNIONSELECT    login.date,    0.000FROM loginWHERE date NOT IN( ...
实验10 SQL互联网业务查询-1
发表于2025-01-12|题解
第1关 查找购买个数超过20,重量小于50的商品,按照商品id升序排序 12345678910USE mygoods;########## Begin ##########SELECT G.id,SUM(T.count) totalFROM goods GJOIN trans T USING(id)WHERE weight < 50GROUP BY T.idHAVING SUM(T.count)>20ORDER BY G.id;########## End ########## 第2关 查询向follow表中user_id = 1 的用户,推荐其关注的人喜欢的音乐 1234567891011121314151617USE mymusic;########## Begin ##########SELECT DISTINCT music_nameFROM musicWHERE id IN(    SELECT music_id    FROM music_likes mi,follow f    WHERE mi.user_id = f.follower_id AND...
实验9 SQL视图
发表于2025-01-12|题解
第1关 请为三建工程项目建立一个供应情况的视图V_SPQ,包括供应商代码(SNO)、零件代码(PNO)、供应数量(QTY) 123456789101112USE mydata;#请在此处添加实现代码########## Begin ##########CREATE VIEW V_SPQ ASSELECT SNO,PNO,QTYFROM SPJJOIN J USING(JNO)WHERE JNAME = '三建';########## End ###########以下代码禁止删除SELECT * FROM V_SPQ; 第2关 从视图V_SPQ找出三建工程项目使用的各种零件代码及其数 123456789USE mydata;#请在此处添加实现代码########## Begin ##########SELECT PNO ,SUM(QTY) SUM_QTYFROM V_SPQGROUP BY PNOORDER BY SUM_QTY DESC########## End ########## 第3关...
实验8 SQL的复杂多表查询-2
发表于2025-01-12|题解
第1关 基于派生表查询每个队员解答中超过他平均memory的user_id及题目编号problem_id 12345678910111213USE `sqlexp-sztuoj`;#请在此处添加实现代码########## Begin ##########SELECT s.user_id,s.problem_idFROM(    SELECT user_id,AVG(memory) AS AM    FROM solution    GROUP BY user_id) AS TaJOIN solution s USING(user_id)WHERE s.memory > Ta.AM########## End ########## 第2关 用ANY/ALL实现查询2019级选手(user_id前4位为2019)满足比2020级其中一个选手注册时间早即可的选手 123456789101112USE `sqlexp-sztuoj`;#请在此处添加实现代码########## Begin ##########SELECT user_id,reg_time,nameFROM...
实验7 SQL的复杂多表查询-1
发表于2025-01-12|题解
第1关 求各颜色零件的平均重量 12345678910USE mydata;#请在此处添加实现代码########## Begin ##########SELECT    COLOR,    AVG(WEIGHT)FROM PGROUP BY COLOR;########## End ########## 第2关 求北京和天津供应商的总个数 1234567891011121314151617USE mydata;#请在此处添加实现代码########## Begin ##########SELECT    CITY,    COUNT(*)FROM SWHERE CITY = '北京'UNIONSELECT    CITY,    COUNT(*)FROM SWHERE CITY = '天津'########## End ########## 第3关 求各供应商供应的零件总数 123456789101112USE mydata;#请在此处添加实现代码########## Begin ##########SELECT    SNO,   ...
实验6 SQL的多表查询-2
发表于2025-01-12|题解
第1关 查询每个选手的信息及其提交的解答信息,没做题的选手不显示 123456789USE `sqlexp-sztuoj`;#请在此处添加实现代码,在语句末尾加LIMIT 50,即可显示查询结果前50条。########## Begin ##########SELECT *FROM users u,solution sWHERE u.user_id = s.user_idLIMIT 50;########## End ########## 第2关 查询做了1001题且耗时大于500(time)的选手信息 12345678USE `sqlexp-sztuoj`;#请在此处添加实现代码########## Begin ##########SELECT DISTINCT u.user_id,u.reg_time,u.nameFROM users u,solution sWHERE u.user_id = s.user_id AND s.time>500 AND s.problem_id = 1001;########## End ########## 第3关...
实验5 SQL的多表查询-1
发表于2025-01-12|题解
第1关 等值连接:求S表和J表城市相同的等值连接(列顺序还是按照S、J表) 12345678USE mydata;#请在此处添加实现代码########## Begin ##########select *from S,JWHERE S.CITY = J.CITY########## End ########## 第2关 查询供应情况,并显示供应商、零件和工程三者的名称 12345678910111213141516USE mydata;#请在此处添加实现代码########## Begin ##########SELECT SNAME,PNAME,JNAME,QTYFROM SPJJOIN S USING (SNO)JOIN P USING(PNO)JOIN J USING(JNO)-- 第二种写法SELECT SNAME,PNAME,JNAME,QTYFROM SPJJOIN S ON SPJ.SNO = S.SNOJOIN P ON SPJ.PNO = P.PNOJOIN J ON SPJ.JNO = J.JNO########## End ########## 第3关...
实验4 MySQL单表查询
发表于2025-01-12|题解
第1关 在users表中新增一个用户,user_id为2019100904学号,name为’2019-物联网-李明’ 123456789USE `sqlexp-sztuoj`;#请在此处添加实现代码########## Begin ##########INSERT INTO users(user_id,name)VALUES(2019100904,'2019-物联网-李明');########## End ###########以下代码禁止删除SELECT * FROM users WHERE users.user_id = '2019100904'; 第2关 在users表中更新用户 user_id为robot_2 的信息,name设为 ‘机器人二号’ 12345678910USE `sqlexp-sztuoj`;#请在此处添加实现代码########## Begin ##########UPDATE usersSET name='机器人二号'WHERE...
1…4567
avatar
Crayz
文章
70
标签
5
分类
2
Follow Me
公告
This is my Blog
最新文章
使用 Python BeautifulSoup 提取指定网页特定区域图片并显示图片大小2025-04-30
Python实验十五2025-04-16
Python实验十四2025-04-16
Python实验十三2025-04-16
计网实验报告2025-04-15
分类
  • 学习笔记16
  • 题解47
标签
操作系统 面向对象程序设计 计算机网络 MySQL Python
归档
  • 四月 2025 18
  • 二月 2025 7
  • 一月 2025 29
  • 十二月 2024 3
  • 十一月 2024 1
  • 十月 2024 1
  • 九月 2024 1
  • 五月 2024 10
网站信息
文章数目 :
70
本站总字数 :
88.6k
本站访客数 :
本站总浏览量 :
最后更新时间 :
©2019 - 2025 By Crayz
框架 Hexo|主题 Butterfly
搜索
数据加载中