SQL语言Select经典语句
-- 示例数据
Select * From Employee
Select * From Department -- 返回工资最高的员工的信息
Select * From Employee where Salary in (Select MAX(Salary) from Employee) -- 返回员工表中最高工资
Select Max(Salary) from Employee -- 从员工表中返回第二高的工资
Select Max(Salary) from Employee where Salary not in(Select Max(Salary) from Employee) -- 按照员工Id的区间获取相应员工信息
Select * from Employee where Id between 1 and 3 -- 返回工资最高员工的信息以及他所在的部门名称
Select e.Salary, e.Name, d.Name from Employee as e inner join Department as d on e.Dept_Id=d.Id where e.Salary in (Select MAX(Salary) from Employee) -- 返回每一个部门中的工资最高的员工信息
Select e.Salary, e.Name, d.Name from Employee as e inner join Department as d on e.Dept_Id=d.Id
where e.Salary in (Select MAX(Salary) from Employee group by Dept_Id)
注意:最后的一个Select语句中使用到了group by, group by经常和Aggregate函数一起使用,用来按分组统计MAX(), Min(), AVG(),等等。
示例数据

返回工资最高的员工的信息

返回员工表中最高工资

从员工表中返回第二高的工资

按照员工Id的区间获取相应员工信息

返回工资最高员工的信息以及他所在的部门名称

以上代码使用到了inner join,除了inner join外,还有outer join, left join, right join,他们的区别是:
- inner join - 返回2个表中共同有关联的部分
- outer join - 返回2个表中所有的信息,有关联的部分合在一起
- left join - 返回左表中所有的信息,以及右表中与左表有关联的部分
- right join - 返回右表中所有信息,以及左表中与右表有关联的部分
是不是看晕了,看这个图就明白了:

返回每一个部门中的工资最高的员工信息

SQL语言Select经典语句的更多相关文章
- SQL update select结合语句详解及应用
QL update select语句 最常用的update语法是: 1 2 UPDATE TABLE_NAME SET column_name1 = VALUE WHRER column_name2 ...
- [SQL]SQL语言入门级教材_SQL语言快速入门(五)
SQL语言快速入门(一) SQL是英文Structured Query Language的缩写,意思为结构化查询语言. SQL语言的主要功能就是同各种数据库建立联系,进行沟通.按照ANSI(美国国家标 ...
- SQL入门(4): 嵌入式SQL语言
本节讲述内容: 1.嵌入式SQL 语言概述 2.变量声明与数据库连接 3.数据集与游标 4.可滚动游标与数据库的增删改 5.状态捕捉以及错误处理机制 (一)嵌入式SQL语言 之前我们所学的都是交互式S ...
- Impala SQL 语言元素(翻译)[转载]
原 Impala SQL 语言元素(翻译) 本文来源于http://my.oschina.net/weiqingbin/blog/189413#OSC_h2_2 摘要 http://www.cloud ...
- Impala SQL 语言元素(翻译)
摘要: http://www.cloudera.com/content/cloudera-content/cloudera-docs/Impala/latest/Installing-and-Usin ...
- 【转】sql server数据库操作大全——常用语句/技巧集锦/经典语句
本文为累计整理,有点乱,凑合着看吧! ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ ☆ ☆ ☆ sql 宝 典 ☆ ☆ ☆ 2012年-8月 修订版 ☆ ...
- [SQL]SQL语言入门级教材_SQL语言基本语句介绍(四)
SQL语言基本语句介绍 • 表的建立 关系数据库的主要特点之一就是用表的方式组织数据.表是SQL语言存放数据.查找数据以及更新数据的基本数据结构.在SQL语言中,表有严格的定义,它是一种二维表,对于这 ...
- 【SQL】SQL 中Select语句完整的执行顺序
SQL Select语句完整的执行顺序: 1.from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子句将数据划分为多个分组: 4.使用聚集函 ...
- SQL UNION 和 UNION ALL 操作符\SQL SELECT INTO 语句\SQL CREATE DATABASE 语句
SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每 ...
随机推荐
- Python_逻辑运算符
1.逻辑运算符
- Codeforces #367 (Div. 2) D. Vasiliy's Multiset (trie 树)
http://codeforces.com/group/1EzrFFyOc0/contest/706/problem/D 题目:就是有3种操作 + x向集合里添加 x - x 删除x元素,(保证存在 ...
- idea启动springboot项目报Error running 'ServiceStarter': Command line is too long. Shorten command line for ServiceStarter or also for Application
解决办法:在.idea文件夹下面的workspace.xml中的 <component name="PropertiesComponent">标签下面添加: <p ...
- uni-app之导航配置pages.json
1.基础配置,各个页面都要在这里边引入. 2.基础配置,头部导航左右上脚的buttons设置. 3.如果没有权限展示底部导航的需求,可以直接在此文件配置底部导航.
- js onclick事件传参
传字符串参数 var html = "<a href='#' onclick='onedit(""+ row.name + "")';>编 ...
- pid 及参数调试方法
所谓PID指的是Proportion-Integral-Differential.翻译成中文是比例-积分-微分. 记住两句话: 1.PID是经典控制(使用年代久远) 2.PID是误差控制() 对直流电 ...
- Java链接Redis时出现 “ERR Client sent AUTH, but no password is set”
Java链接Redis时出现 “ERR Client sent AUTH, but no password is set” 异常的原因及解决办法. [错误提示] redis.clients.jedis ...
- MongoDB 查看存储引擎
需要登录到具体的主/从节点查询,mongos查询不到 db.serverStatus() 其中有这个 "storageEngine" : { "name" : ...
- P1213 时钟
题目描述 考虑将如此安排在一个 3 x 3 行列中的九个时钟: 目标要找一个最小的移动顺序将所有的指针指向12点.下面原表格列出了9种不同的旋转指针的方法,每一种方法都叫一次移动.选择1到9号移动方法 ...
- NetworkX系列教程(10)-算法之五:广度优先与深度优先
小书匠Graph图论 重头戏部分来了,写到这里我感觉得仔细认真点了,可能在NetworkX中,实现某些算法就一句话的事,但是这个算法是做什么的,用在什么地方,原理是怎么样的,不清除,所以,我决定先把图 ...