当前位置: 首页 > news >正文

临海高端网站设计新感觉建站重庆百度网站推广

临海高端网站设计新感觉建站,重庆百度网站推广,好三网网站,网站被k的迹象目录 实验目的实验内容实验要求实验过程实验代码结果示意 书接上文#xff0c;但是感觉之前的形式不太好用#xff0c;至少不是很方便观看#xff0c;所以这篇尝试改变一下写法#xff0c;希望可以提升一些观感 实验目的 (1) 掌握RDBMS的数据多表查询功能 (2) 掌握SQL语言… 目录 实验目的实验内容实验要求实验过程实验代码结果示意 书接上文但是感觉之前的形式不太好用至少不是很方便观看所以这篇尝试改变一下写法希望可以提升一些观感 实验目的 (1) 掌握RDBMS的数据多表查询功能 (2) 掌握SQL语言的数据多表查询语句 实验内容 (1) 等值连接查询含自然连接查询与非等值连接查询 (2) 自身连接查询 (3) 外连接查询 (4) 复合条件连接查询 (5) 嵌套查询带有IN谓词的子查询 (6) 嵌套查询带有比较运算符的子查询 (7) 嵌套查询带有ANY或ALL谓词的子查询 (8) 嵌套查询带有EXISTS谓词的子查询 (9) 集合查询 实验要求 (1) 熟练掌握SQL的连接查询语句 (2) 熟练掌握SQL的嵌套查询语句 (3) 掌握表名前缀、别名前缀的用法 (4) 掌握不相关子查询和相关子查询的区别和用法 (5) 掌握不同查询之间的等价替换方法一题多解及限制记录实验结果认真完成实验报告 实验过程 建立示例数据库S_T复习 表Student 学号 Sno 姓名 Sname 性别 Ssex 年龄 Sage 所在系 Sdept 200215121 李勇 男 20 CS 200215122 刘晨 女 19 CS 200215123 王敏 女 18 MA 200215125 张立 男 19 IS 表Course 课程号 Cno 课程名 Cname 现行课 Cpno 学分 Ccredit 1 数据库 5 4 2 数学 2 3 信息系统 5 4 4 操作系统 6 3 5 数据结构 7 4 6 数据处理 2 7 PASCAL语言 6 4 表SC 学号 Sno 课程号 Cno 成绩 Grade 200215121 1 92 200215121 2 85 200215121 3 88 200215122 2 90 200215122 3 80 实验代码 在SQL Server集成管理器的查询窗口中输入如下SQL语句序列来创建示例数据库。 /* 创建示例数据库S_T包括3个表即学生表Student、课程表Course和选课表SC*/ create database S_T; go use S_T; /*将S_T设为当前数据库*/ create table Student(Sno CHAR(9) PRIMARY KEY,Sname CHAR(20) UNIQUE,Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20)); go /表Student的主码为Sno属性列Sname取唯一值/ create table Course(Cno CHAR(4) PRIMARY KEY,Cname CHAR(40),Cpno CHAR(4),Ccredit SMALLINT,FOREIGN KEY (Cpno) REFERENCES Course(Cno)); go /表Course的主码为Cno属性列Cpno(先修课)为外码被参照表为Course被参照列是Cno/ create table SC(Sno CHAR(9),Cno CHAR(4),Grade SMALLINT,primary key (Sno, Cno),FOREIGN KEY (Sno) REFERENCES Student(Sno),FOREIGN KEY (Cno) REFERENCES Course(Cno)); go /表SC的主码为(Sno, Cno), Sno和Cno均为外码被参照表分别为Student和Course被参照列分别为Student.Sno和Course.Cno/ insert into student values(200215121,李勇,男,20,CS); insert into student values(200215122,刘晨,女,19,CS); insert into student values(200215123,王敏,女,18,MA); insert into student values(200215125,张立,男,19,IS); go /为表Student添加数据/ insert into course values(1, 数据库, NULL,4); insert into course values(2, 数学, NULL,2); insert into course values(3, 信息系统, NULL,4); insert into course values(4, 操作系统, NULL,3); insert into course values(5, 数据结构, NULL,4); insert into course values(6, 数据处理, NULL, 2); insert into course values(7, PASCAL语言, NULL,4); go update Course set Cpno 5 where Cno 1; update Course set Cpno 1 where Cno 3; update Course set Cpno 6 where Cno 4; update Course set Cpno 7 where Cno 5; update Course set Cpno 6 where Cno 7; go/为表Course添加数据/ insert into SC values(200215121, 1,92); insert into SC values(200215121, 2,85); insert into SC values(200215121, 3,88); insert into SC values(200215122, 2,90); insert into SC values(200215122, 3,80); go也可以将上述SQL语句序列预先保存在S_T.sql文件中在SSMS中打开并执行该文件中的sql语句序列 对学生关系Student、课程关系Course和选修关系SC进行多表查询 基本练习 1等值连接查询与自然连接查询 例如查询每个学生及其选修课的情况。 SELECT Student.*, SC.* FROM Student, SC WHERE Student.Sno SC.Sno; /* 一般等值连接 */ 又如查询每个学生及其选修课的情况去掉重复列 SELECT Student.Sno, Sname, Ssex, Sage, Cno, Grade FROM Student, SC WHERE Student.Sno SC.Sno; /* 自然连接--特殊的等值连接 */ 2自身连接查询 例如查询每一门课的间接先修课。 SELECT FIRST.Cno, SECOND.Cpno FROM Course FIRST, Course SECOND WHERE FIRST.Cpno SECOND.Cno; 3外连接查询 例如查询每个学生及其选修课的情况要求输出所有学生–含未选修课程的学生的情况 SELECT Student.Sno, Sname, Ssex, Sage, Sdept, Cno, Grade FROM Student LEFT OUTER JOIN SC ON(Student.Sno SC.Sno); 4复合条件连接查询 例如查询选修了2号课程而且成绩在90以上的所有学生的学号和姓名。 SELECT Student.Sno,Sname FROM Student,SC WHERE Student.Sno SC.Sno ANDSC.Cno 2 AND SC.Grade 90; 又如查询每个学生的学号、姓名、选修的课程名及成绩。 SELECT Student.Sno, Sname, Cname, Grade FROM Student, SC, Course WHERE Student.Sno SC.Sno ANDSC.Cno Course.Cno; 5嵌套查询带有IN谓词的子查询 例如查询与“刘晨”在同一个系学习的学生的学号、姓名和所在系。 SELECT Sno, Sname, Sdept FROM Student WHERE Sdept IN (SELECT SdeptFROM StudentWHERE Sname 刘晨); /* 解法一*/ 可以将本查询中的IN谓词用比较运算符‘’来代替 SELECT Sno, Sname, Sdept FROM Student WHERE Sdept (SELECT SdeptFROM StudentWHERE Sname 刘晨); /* 解法二*/ 也可以使用自身连接完成以上查询 sql SELECT s1.Sno, s1.Sname, s1.Sdept FROM Student s1, Student s2 WHERE s1.Sdept S2.Sdept AND s2.Sname 刘晨; /* 解法三*/ 还可以使用EXISTS谓词完成本查询 SELECT Sno, Sname, Sdept FROM Student S1 WHERE EXISTS(SELECT *FROM Student S2WHERE S2.SdeptS1.Sdept AND S2.Sname刘晨); /* 解法四*/又如查询选修了课程名为“信息系统”的学生号和姓名。 SELECT Sno, Sname FROM Student WHERE Sno IN (SELECT SnoFROM SCWHERE Cno IN(SELECT CnoFROM CourseWHERE Cname 信息系统)); 也可以使用连接查询来完成上述查询 sql SELECT Student.Sno, Sname FROM Student, SC, Course WHERE Student.Sno SC.Sno ANDSC.Cno Course.Cno ANDCourse.Cname 信息系统;6嵌套查询带有比较运算符的子查询 例如找出每个学生超过他所选修课程平均成绩的课程号。 SELECT Sno, Cno FROM SC x WHERE Grade ( SELECT AVG(Grade)FROM SC yWHERE y.Sno x.Sno);7嵌套查询带有ANY或ALL谓词的子查询 例如查询其他系中比计算机系某个学生年龄小的学生的姓名和年龄。 SELECT Sname, Sage FROM Student WHERE Sage ANY (SELECT SageFROM StudentWHERE Sdept CS)AND Sdept CS;本查询也可以使用聚集函数来实现 SELECT Sname, Sage FROM Student WHERE Sage (SELECT MAX(Sage)FROM StudentWHERE Sdept CS)AND Sdept CS;又如查询其他系中比计算机系所有学生年龄都小的学生的姓名和年龄。 SELECT Sname, Sage FROM Student WHERE Sage ALL (SELECT SageFROM StudentWHERE Sdept CS)AND Sdept CS;也可以使用聚集函数来实现 SELECT Sname, Sage FROM Student WHERE Sage (SELECT MIN(Sage)FROM StudentWHERE Sdept CS)AND Sdept CS;8嵌套查询带有EXISTS谓词的子查询 例如查询所有选修了1号课程的学生姓名。 111sqlSELECT Sname FROM Student WHERE EXISTS (SELECT * FROM SC WHERE SnoStudent.Sno AND Cno‘1’); 又如查询所有未选修1号课程的学生姓名。 sql SELECT Sname FROM Student WHERE NOT EXISTS(SELECT *FROM SCWHERE SnoStudent.Sno AND Cno1);可以使用带有EXISTS谓词的子查询实现全称量词或蕴涵逻辑运算功能 例如查询选修了全部课程的学生姓名。 SELECT Sname FROM Student WHERE NOT EXISTS(SELECT *FROM CourseWHERE NOT EXISTS(SELECT *FROM SCWHERE SnoStudent.Sno ANDCnoCourse.Cno));又如查询至少选修了学生200215122选修的全部课程的学生号码。 SELECT DISTINCT Sno FROM SC SCX WHERE NOT EXISTS(SELECT *FROM SC SCYWHERE SCY.Sno200215122 ANDNOT EXISTS(SELECT *FROM SC SCZWHERE SCZ.SnoSCX.Sno ANDSCZ.CnoSCY.Cno));9集合查询 例如查询计算机系的学生以及年龄不大于19岁的的学生。 SELECT * FROM Student WHERE SdeptCS UNION /*并集运算*/ SELECT * FROM Student WHERE Sage19;可以改用多重条件查询 SELECT * FROM Student WHERE SdeptCS OR Sage19;又如查询既选修了课程1又选修了课程2的学生交集运算。 SELECT Sno FROM SC WHERE Cno1 INTERSECT /*交集运算*/ SELECT Sno FROM SC WHERE Cno2;可以使用嵌套查询 SELECT Sno FROM SC WHERE Cno1 AND Sno IN(SELECT SnoFROM SCWHERE Cno2);思考能不能改用多重条件查询 SELECT Sno FROM SC WHERE Cno1 AND Cno2;再如查询计算机系的学生与年龄不大于19岁的学生的差集。 SELECT * FROM Student WHERE SdeptCS EXCEPT /*差集运算*/ SELECT * FROM Student WHERE Sage19;可以改用多重条件查询 SELECT * FROM Student WHERE SdeptCS AND Sage19;结果示意
http://www.hkea.cn/news/14327600/

相关文章:

  • 银川网站开发公司音乐视频制作软件app
  • 个人网站设计主题搜索引擎主要包括三个部分
  • 上传设计作品的网站北京网站建设专家
  • 网站导航页面制作网页制作基础教程田田田田田田田田
  • 如何搭建门户网站建工教育网
  • 小型网站搭建建设银行网站怎么登录
  • 怎么做网站广告位学新媒体运营最好的培训学校
  • 制作网站注册登录模块的思维导图网站开发服务器怎么选
  • 网站分站开发计划书厦门正规网站建设企业
  • 网站 封锁右键沈阳网站建设技术支持
  • 优质的做网站农资网站建设
  • 如何优化wordpress网站有没有找外加工的活的平台
  • 济南做网站找哪家好网站群建设技术方案
  • 做二手货的网站有哪些网站建设kaicz
  • wordpress建站过程h5制作软件 知乎 推荐
  • 备案老域名首页关键词优化公司
  • 网站弄好了怎么推广外贸网站建设入门
  • 怎么做钓鱼网站吗wordpress json ld
  • 网站建设公司推荐q479185700顶上wordpress 文章幻灯片
  • 现在网站开发用什么合肥网页设计兼职
  • 海会主机做的网站都能干什么的南海网站建设多少钱
  • 做视频网站服务器配置免费申请网站 免备案
  • 台州网站建站公司荣耀官方网站手机商城
  • 大连成品网站建设wordpress 评论框 模板
  • 网站页脚怎么做仕德伟做的网站图片怎么修
  • 交互效果网站佛山app开发公司
  • 做外贸要访问国外的网站怎么办建设网站的视频
  • 福州网站建设免费咨询c2c模式的企业有哪些
  • wordpress建站论坛更新服务 wordpress
  • 自助下单网站怎么做wordpress ajax登录页面