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

网站 建设公司中小企业管理培训课程

网站 建设公司,中小企业管理培训课程,网站免费正能量不下载,成都 网站建设目录 复合查询 回顾基本查询 多表查询 自连接 子查询 where 字句中使用子查询 单行子查询 多行子查询 多列子查询 from 字句中使用子查询 合并查询 实战OJ 查找所有员工入职时候的薪水情况 获取所有非manager的员工emp_no 获取所有员工当前的manager 表的内外…

目录

复合查询

回顾基本查询

多表查询

自连接

子查询 

where 字句中使用子查询

单行子查询

多行子查询

多列子查询

from 字句中使用子查询

合并查询

实战OJ

查找所有员工入职时候的薪水情况

获取所有非manager的员工emp_no

获取所有员工当前的manager

表的内外连

内连接

外连接

左连接

右外连接

实战OJ

分数排名

换座位


复合查询

回顾基本查询

        查询工资高于500或岗位为MANAGER的雇员,同时还要满足他们的姓名首字母为大写的J

        按照部门号升序而雇员的工资降序排序

        使用年薪进行降序排序

        显示工资最高的员工的名字和工作岗位

        显示工资高于平均工资的员工信息

        显示每个部门的平均工资和最高工资

        显示(按照每个部门)平均工资低于2000的部门号和它的平均工资

        显示每种岗位的雇员总数,平均工资

多表查询

        实际开发中往往数据来自不同的表,所以需要多表查询

        使用 select * from 连接两张表时用逗号隔开,结果是两张表的所有记录组合,称为笛卡尔积

        显示雇员名、雇员工资以及所在部门的名字

        显示部门号为10的部门名,员工名和工资

        显示各个员工的姓名,工资,及工资级别

自连接

        自连接是指在同一张表连接查询

        显示员工FORD的上级领导的编号和姓名(mgr是员工领导的编号 empno是公司员工编号)

子查询 

        子查询是指嵌入在其他sql语句中的select语句,也叫嵌套查询

where 字句中使用子查询

单行子查询

        返回一行记录的子查询

        显示SMITH同一部门的员工

多行子查询

        返回多行记录的子查询

        查询和10号部门的工作岗位相同的雇员的名字,岗位,工资,部门号,但是不包含10自己的(使用 in 关键字)

        显示工资比部门30的所有员工的工资高的员工的姓名、工资和部门号(可以使用 all 关键字)

        显示工资比部门30的任意员工的工资高的员工的姓名、工资和部门号(比部门30的最小工资大即可)(使用 any 关键字)

多列子查询

        单行子查询是指子查询只返回单列,单行数据;多行子查询是指返回单列多行数据,都是针对单列而言的,而多列子查询则是指查询返回多个列数据的子查询语句

        查询和SMITH的部门和岗位完全相同的所有雇员的名字,岗位和部门,不含SMITH本人

from 字句中使用子查询

        显示每个高于自己部门平均工资的员工的姓名、部门、工资、平均工资

        查找每个部门工资最高的人的姓名、工资、部门、最高工资(太长省略as关键字)

        显示每个部门的信息(部门名,编号,地址)和人员数量

合并查询

        在实际应用中,为了合并多个select的执行结果,可以使用集合操作符 union,union all找并集

        将工资大于2500或职位是MANAGER的人找出来(使用 union 把不出现重复行)

        使用union all 可出现结果重复(出现交集的地方允许重复)

实战OJ

查找所有员工入职时候的薪水情况

select s.emp_no,s.salary from employees e,salaries s 
where e.emp_no=s.emp_no and e.hire_date=s.from_date 
order by emp_no desc;

获取所有非manager的员工emp_no

select emp_no from employees where emp_no not in (select emp_no from dept_manager);

获取所有员工当前的manager

select e.emp_no,m.emp_no from dept_emp e,dept_manager m
where e.dept_no=m.dept_no and e.emp_no!=m.emp_no;

表的内外连

内连接

        内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选,我们前面的多表查询都是内连接,也是在开发过程中使用的最多的连接查询

        显示SMITH的名字和部门名称

外连接

        外连接分为左连接与右连接

左连接

        多表查询,左侧的表显示所有信息我们就说是左外连接

        建两张表:学生表与成绩表并在里面插入对应的数据

        查询所有学生的成绩,如果这个学生没有成绩,也要将学生的个人信息显示出来

右外连接

        多表查询,右侧的表显示所有信息我们就说是右外连接

        对stu表和stu_exam表联合查询,把所有的成绩都显示出来,即使这个成绩没有学生与它应,也要显示出来

        列出部门名称和这些部门的员工名,同时列出没有员工的部门

实战OJ

分数排名

相同的表查询:

第一张a表中我们对分数进行降序排序;

第二张b表中我们去除重复的分数后得到集合X:在X中找到比a表的分数大于等于的数的元素个数,此时该元素个数就是a表的分数在表中的排名,比如:最高为98,在集合X中找到的分数有98,99,100:此时元素个数为3也就是98分的排名

select a.score score,
(select count(distinct b.score) from Scores b where b.score>=a.score) 'rank'
from Scores a order by a.score desc;

换座位

遇到id遇到偶数-2 / 偶数-1,奇数+1

select rank() over(order by if(id%2=0,id-2,id)) as id,student from Seat;
-- select id,student from Seat order by if(id%2=0,id-2,id);

以上便是全部内容,有问题欢迎在评论区指正,感谢观看!

http://www.dtcms.com/wzjs/56635.html

相关文章:

  • 做网站那家好seo和sem哪个工资高
  • 网站部署到服务器上海小红书seo
  • 创建网站根目录网站优化关键词排名公司
  • 建立网站容量2021年热门关键词
  • 网站ps照片怎么做的关键词seo排名优化软件
  • 嘉兴自助建站模板百度免费推广网站
  • 网站建化百度seo排名培训优化
  • 功能型网站建设时间淘宝运营一般要学多久
  • ps做网站要多大搜索引擎优化实训报告
  • 网站开发网站开发济宁seo优化公司
  • 网站dede后台新媒体seo指的是什么
  • 网站建设视频百度云百度浏览器官网入口
  • 聊城做网站推广费用sem优化服务公司
  • 腾讯云中使用wordpressseo高级
  • 成都官方网站建设app推广方法
  • 怎么把做的网站上传到网络网络营销文案实例
  • 烟台网站建设科技网络营销策划书步骤
  • 江苏水利工程建设招投标网站合肥网络seo
  • 程序员不是做网站的广告公司注册
  • 诸城网络科技网站建设seo推广优化外包公司
  • 2003 iis网站发布网站太原做网站哪家好
  • 梅州网站制作baidu2021百度新算法优化
  • 做网站有兼职吗行业关键词搜索量排名
  • 做网站方案seo是什么姓氏
  • 做网站的都改行做什么了营销活动策划方案
  • 福建省建设人才市场网站网站推广排名收费
  • 静态网站开发课程网新闻头条今日最新消息
  • 在长沙阳光医院做网站编辑模板建站优点
  • 找公司做网站注意什么网站优化seo怎么做
  • 甘肃网站备案东莞seo黑帽培训