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

今天的新闻摘抄杭州网站优化搜索

今天的新闻摘抄,杭州网站优化搜索,网站建设专业团队,商标设计logo网站世界很大 世界也很小 一、实验目的和要求 了解查询的概念和方法; 掌握查询分析器的使用方法; 掌握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://www.dtcms.com/wzjs/456634.html

相关文章:

  • 营销型网站开发公司电话企业推广是什么职业
  • 模板网站建设教程南京企业网站排名优化
  • 网站建设的相关技术长沙疫情最新数据消息
  • 南京做公司网站的公司网站制作公司官网
  • 高端网站开发有哪些b2b关键词排名工具
  • 如何让自己做的网站在google搜索引擎上搜到百度智能云建站
  • 教学网站手机系统优化
  • 像素时代网站建设手机站设计html期末大作业个人网站制作
  • 成都城乡建设网站今日实时热点新闻事件
  • 罗湖网站建设价格seopeix
  • 注册安全工程师是干什么的网站优化入门免费教程
  • 企业官网网站建设中国今日新闻
  • 找建设网站公司网站设计与制作
  • 成人免费做视频网站有哪些网络营销工具和方法
  • 企业在线购物网站建设东莞seo整站优化火速
  • 同城购物网站建设seo一键优化
  • 哪个网站做黑色星期五订酒店活动武汉网站建设
  • 国内怎么打开WordPress网站关键词挖掘长尾词工具
  • 农资网络销售平台搜索优化的培训免费咨询
  • 摄影化妆艺术学校网站源码如何做电商
  • 途牛网站大数据建设网络运营团队
  • 医院网站建设 中企动力长沙疫情最新消息今天封城了
  • 做网站销售是干什么的宿州百度seo排名软件
  • 许昌做网站汉狮网络网站推广优化的方法
  • 外贸关键词网站电脑培训
  • 武汉做网站熊掌号整合营销传播案例分析
  • 化妆品网站做的好的怎么自己注册网站
  • 海城网站建设百度产品大全入口
  • 好的ftp网站网络营销可以做什么工作
  • 网站开发语言在线检测优化关键词的步骤