navicat保存查询语句_SQL复杂查询

更新时间:2023-07-07 16:39:11 阅读: 评论:0

oppositesnavicat保存查询语句_SQL复杂查询
摘要
视图#1
⼦查询#2
标量⼦查询#3
关联⼦查询#4
如何使⽤SQL解决业务问题#5
各种函数#6
视图#1
什么是视图?⽤⼀句话概述的话,就是“从SQL的⾓度来看视图就是⼀张表”。但是使⽤视图时并不会将数据保存到存储设备之中,⽽且什么是视图?
也不会将数据保存到其他任何地⽅。实际上视图保存的是SELECT语句,我们从视图中读取数据时,视图会在内部执⾏该SELECT语句并创建出⼀张临时表。
视图有什么⽤?视图的优点⼤体有两点:
视图有什么⽤?
第⼀:由于视图⽆需保存数据,因此可以节省存储设备的容量。。
第⼆:可以将频繁使⽤的SELECT语句保存成视图,这样就不⽤每次都重新书写了。创建好视图之后,只需在SELECT语句中进⾏调⽤,就可以⽅便地得到想要的结果了。特别是在进⾏汇总以及复杂的查询条件导致SELECT语句⾮常庞⼤时,使⽤视图可以⼤⼤提⾼效率。⽽且,视图中的数据会随着原表的变化⾃动更新。视图归根到底就是SELECT语句,所谓“参照视图”也就是“执⾏SELECT语句”的
意思,因此可以保证数据的最新状态。这也是将数据保存在表中所不具备的优势。
本⽂内的⼤部分代码将以下⾯表的数据进⾏演练,分别是student、score。
student表
显亲扬名
score表
如何创建视图?
reload
通过数据库管理⼯具Navicat输⼊查询语句:
create view 视图名称(<;视图列名1>,<;视图列名2>,...)
as
<lect 查询语句>;
练习:创建 按性别汇总 视图。
create view 按性别汇总(性别,⼈数)
as
lect 性别,count(*)
from student
group by 性别;
创建完成后,在Navicat对应的数据库下刷新视图,就能显“按性别汇总的视图。
有哪些注意事项?
注意事项1:避免在视图下再创建视图,对多数DBMS来说,多重视图会降低SQL的性能。
注意事项2:不能往视图⾥插⼊数据,不然会报错。
短歌行的翻译
⼦查询#2
什么是⼦查询?⼦查询以视图为基础。⼦查询的特点概括起来就是“⼀张⼀次性视图”,⼦查询将⽤来定义视图的SELECT语句直接⽤于FROM⼦句当中。
在FROM⼦句中直接写定义视图的SQL查询语句,运⾏顺序是先运⾏括号⾥⾯的再运⾏括号外⾯的。
new wave
练习:⽤⼦查询实现查询student表中各个性别的⼈数。
lect 性别,⼈数
from(
lect 性别,count(*) as ⼈数
from student
group by 性别
) as 按性别汇总;
如何使⽤⼦查询?
常见的⼦查询搭配有:...in(⼦查询)、...any(⼦查询)、...all(⼦查询)
练习:找出每个课程⾥ 成绩最低的 学号。
当⽤lect语句直接查找每个课程⾥ 成绩最低的学号,这⾥lect语句识别的 学号 会随机出现。
正确的⽅法是分解成两个步骤(分析思路):
-- 第1步:查找出每门课程的最低成绩有哪些值
小样英文lect 课程号,min(成绩)
from score
group by 课程号
-- 第2步:在成绩表⾥查找这些值
lect 学号,成绩
from score
where 成绩 in(80,60,80);
-- 合并后的SQL,括号⾥⾯的语句为⼦查询
lect 学号,成绩
from score
where 成绩 in(
lect min(成绩)
from score
group by 课程号
);
在使⽤any时需要与⽐较运算符⼀起使⽤
...any(⼦查询)与some(⼦查询)相同,⼀般表达式为:
lect <;列名1>
from <;表名1>
where <;列名1> > any(⼦查询);
练习:哪些学⽣的成绩⽐课程0002的全部成绩⾥的任意⼀个⾼呢?
(分析思路)
妇女节的英文第1步:课程0002的全部成绩,⽐如是(10,30)——any括号⾥⾯的语句
lect 成绩
plea wait是什么意思from score
where 课程号 = '0002';
第2步:某个学⽣的成绩⼤于任意⼀个第1步⾥的成绩,就符合条件——任意⼀个⾼any(⼦查询)lect 学号,成绩
from score
ntencewhere 成绩 > any(⼦查询);
完整代码:
lect 学号,成绩
from score
where 成绩 > any(
lect 成绩
from score
where 课程号='0002'
);小学英语培训收费

本文发布于:2023-07-07 16:39:11,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/170122.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:视图   查询   语句   数据   保存   课程   成绩
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图