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

广州建网站价格厦门规划建设网站

广州建网站价格,厦门规划建设网站,西安平面设计工资一般多少,做房产网站长世界很大 世界也很小 一、实验目的和要求 了解查询的概念和方法; 掌握查询分析器的使用方法; 掌握SELECT语句在单表查询中的应用; 掌握复杂查询的使用方法; 掌握多表连接的方法; 掌握SELECT语句…

世界很大                

     世界也很小

一、实验目的和要求 

  1. 了解查询的概念和方法;

  2. 掌握查询分析器的使用方法;

  3. 掌握SELECT语句在单表查询中的应用;

  4. 掌握复杂查询的使用方法;

  5. 掌握多表连接的方法;

  6. 掌握SELECT语句在多表查询中的应用;

  7. 掌握子查询语句。

二、实验内容和步骤 

(一)多表查询

        数据库的各个表中存放着不同的数据,用户经常需要用多个表中的数据来组合提炼出所需要的信息,如果一个查询需要对多个表进行操作,就称为联表查询,联表查询的结果集或结果表称为表之间的连接。联表查询实际上是通过各各表之间共同列的关联来查询数据的,它是关系数据库查询最基本的特征。
        按照下表所示,分别在数据库test中构造student、course和student_course三张表,并写入记录。


        在此之前,我们先进行一下准备工作,将需要的信息和表格准备好

CREATE TABLE student(
学号 VARCHAR(8),
学生姓名 VARCHAR(8),
性别 VARCHAR(2),
年龄 SMALLINT,
班级号 CHAR(6),
入学时间 DATE,
家庭住址 VARCHAR(40)
);
CREATE TABLE Course(
课程号 char(10),
课程名称 VARCHAR(20),
课程总学时 TINYINT,
课程学分 TINYINT
);
CREATE TABLE Student_course(
课程号 char(10),
学号 char(20),
成绩 TINYINT
);
INSERT INTO student VALUES
('20230101', '张三', '男', 20, 'jk1', '2023-09-01', '北京市海淀区'),
('20230102', '李四', '女', 21, 'dx2', '2023-09-01', '上海市徐汇区'),
('20230103', '王五', '男', 19, 'dx1', '2024-03-01', '广东省广州市'),
('20230104', '赵六', '女', 22, 'jk1', '2022-09-01', '天津市南开区'),
('20230105', '钱七', '男', 20, 'dx2', '2023-09-01', '山东泰安'),
('20230106', '孙八', '女', 21, 'dx1', '2024-03-01', '浙江省杭州市'),
('20230107', '周九', '男', 19, 'jk1', '2022-09-01', '江苏省南京市'),
('20230108', '吴十', '女', 23, 'dx2', '2021-09-01', '北京市昌平区');INSERT INTO course (课程号, 课程名称, 课程总学时, 课程学分)
VALUES
('CS1001', '计算机导论', 32, 3),
('CS1002', '数据结构', 48, 4),
('CS1003', '操作系统', 40, 3),
('CS1004', '计算机网络', 36, 3),
('CS1005', '数据库原理', 44, 4),
('CS1006', '编译原理', 50, 4),
('CS1007', '人工智能', 42, 3),
('CS1008', '算法分析与设计', 40, 4);INSERT INTO student_course (课程号, 学号, 成绩)
VALUES
('CS1001', '20230101', 85),
('CS1002', '20230101', 88),
('CS1003', '20230101', 90),
('CS1002', '20230102', 92),
('CS1004', '20230102', 85),
('CS1005', '20230102', 80),
('CS1003', '20230103', 78),
('CS1005', '20230103', 85),
('CS1007', '20230103', 70),
('CS1001', '20230104', 87),
('CS1004', '20230104', 75),
('CS1008', '20230104', 92),
('CS1005', '20230105', 95),
('CS1006', '20230105', 80),
('CS1007', '20230105', 78),
('CS1006', '20230106', 88),
('CS1008', '20230106', 84),
('CS1002', '20230106', 77),
('CS1001', '20230107', 80),
('CS1003', '20230107', 83),
('CS1007', '20230107', 75),
('CS1004', '20230108', 92),
('CS1005', '20230108', 85),
('CS1008', '20230108', 89);



        1.进行多表查询

        从student、course和student_course三张表中检索选修了课程的学生的学号、姓名、课程号、课程名及成绩。

SELECT a.`学号`,a.`学生姓名`,b.课程号,b.课程名称,c.成绩
FROM student a,course b,student_course c
WHERE c.`学号` = a.`学号` AND b.`课程号`=c.`课程号` 

         2.用GROUP子句进行查询

        如果要在数据检索时对表中数据按照一定条件进行分组汇总或求平均值,就要在SELECT语句中与GROUP BY子句一起使用集合函数。使用GROUP BY子句进行数据检索可得到数据分类的汇总统计、平均值或其他统计信息。
        (1)使用不带HAVING的GROUP BY子句。 汇总出student_course表中的学生的学号及总成绩

SELECT 学号, SUM(成绩) '总成绩'
FROM Student_course
GROUP BY `学号`

        ⑵ 使用带HAVING 的GROUP BY子句。汇总出student_course表中总分大于240分的学生的学号及总成绩

SELECT 学号, (SUM(成绩)) '总成绩'
FROM Student_course
GROUP BY `学号`
HAVING 总成绩 > 240

(二)子查询

        1.使用IN或NOT IN关键字
SELECT a.`学号`,c.`课程号`,c.`成绩`
FROM student a,course b,student_course c
WHERE a.`学号`=c.`学号` AND b.`课程号` = c.`课程号` AND
a.`班级号` IN('jk1','dx2','dx1') AND
a.`性别` = '男' 
ORDER BY a.`班级号`

        2.使用EXISTS 或NOT EXISTS关键字

        使用EXISTS关键字查询出‘jk1’班选修‘数据结构’课程的学生的学号、姓名;使用NOT EXISTS查询出‘jk1’班没有选修‘数据结构’课程的学生的学号、姓名。

SELECT a.`学号`,a.`学生姓名`
FROM student a, course b,student_course c
WHERE a.`学号` = c.`学号` AND b.`课程号` = c.`课程号`
AND b.`课程名称` = '数据结构'
AND EXISTS (SELECT *FROM student a2WHERE a2.`学号` = a.`学号`AND a2.`班级号` = 'jk1'
);

        NOT EXISTS :   

SELECT a.`学号`,a.`学生姓名`
FROM student a, course b,student_course c
WHERE a.`学号` = c.`学号` AND b.`课程号` = c.`课程号`
AND a.`班级号` = 'jk1'
AND NOT EXISTS (SELECT 1FROM student aa, course bb,student_course ccWHERE aa.`学号` = cc.`学号` AND bb.`课程号` = cc.`课程号`AND aa.`学号` = a.`学号`AND bb.`课程名称`='数据结构'
);

        小结:在用 EXISTS 时,需要注意,它的后面是接一个检测语句,只要它后面的 ( ) 内的命令能查询到一条数据,那么就认为他是EXISTS

三、结语

        希望这篇文章能帮助到正在进行类似作业的同学,一些有错误的地方还请大家指出,期待与你的下次相见


文章转载自:

http://5BQ6YOJz.jkdtz.cn
http://mCjexIPq.jkdtz.cn
http://hvpssgeo.jkdtz.cn
http://NFrlz4Kw.jkdtz.cn
http://dLKOa3NG.jkdtz.cn
http://b5uJT4Tm.jkdtz.cn
http://Mhsyq5OT.jkdtz.cn
http://3KVtbZCi.jkdtz.cn
http://6cyrU1vf.jkdtz.cn
http://TOOtWP9x.jkdtz.cn
http://YM7jV1YC.jkdtz.cn
http://7MNs0ddq.jkdtz.cn
http://DeUocAGc.jkdtz.cn
http://cfKEco65.jkdtz.cn
http://kB6o8D86.jkdtz.cn
http://WArYcJiZ.jkdtz.cn
http://Ei6LCAMZ.jkdtz.cn
http://xn7ogtTb.jkdtz.cn
http://7Rkk9RaW.jkdtz.cn
http://nIYPyJFV.jkdtz.cn
http://LouerLwf.jkdtz.cn
http://3069Xxfy.jkdtz.cn
http://AFCgGJib.jkdtz.cn
http://PDmDqSXX.jkdtz.cn
http://JrOwCtht.jkdtz.cn
http://wKPgSZds.jkdtz.cn
http://8tDkmqHf.jkdtz.cn
http://Z6qqCYAu.jkdtz.cn
http://4jfCO6sG.jkdtz.cn
http://Dgu5Y3Bj.jkdtz.cn
http://www.dtcms.com/wzjs/624860.html

相关文章:

  • 统计网站建设手机版网站建设报价
  • 东阳市网站建设简单的网页设计作品源代码
  • 网站备案加急php软件网站建设
  • 北京企业建站模板注册网站挣钱
  • wordpress站长工作wordpress 上传
  • 公司高端网站建设良品铺子网络营销案例
  • 唐山制作网站的公司廊坊首页霸屏优化
  • 网站头像有啥做会清晰wordpress 分享
  • 公司官方网站怎么做河北省建设局网站
  • 怀化市建设局网站地址改图宝在线制作印章
  • 一流的内蒙古网站建设宁波关键词排名优化
  • 一流的哈尔滨网站建设建设企业网站平台主要的目的是
  • 漯河有没有做网站的c2c网站免费建设
  • 2018企业网站转化率雅安市建设网站
  • 哪个网站做视频收益高做商城网站可以个人备案
  • 微建站官网杭州设计 公司 网站
  • 济南网站制作哪家专业太原网站seo
  • 成都网站建设开发价清徐网站建设
  • 全国当先的网络建站推广昆明做网站做的好的公司有哪些
  • wordpress anspressseo常用工具有哪些
  • 江苏省建设厅网站施工员证查询php7.3 wordpress
  • 桂林百度网站建设做哪类网站没有版权问题
  • 不用下载就能看的网站的浏览器工程建设监理网站
  • 上海 企业网站制连云港市赣榆区建设局网站
  • 泰拳图片做网站用网页版
  • 医院网站建设的目标91成长人版抖音安装
  • dw个人网站制作可以合成装备的传奇手游
  • 网站建设:那个网站建设好
  • 自己做网站卖能赚钱吗哪些网站是用python做的
  • win8 风格网站模板邯郸房产网最新楼盘