sql 单表查询练习
-- 工资高于3000的员工
select * from emp where sal > 3000;
-- 工资在2500和3000之间的员工
select * from emp where sal <= 3000 and sal >= 2500;
-- 指定日期后入职的员工
select * from emp where hiredate > '1982-1-1';
-- 查找首字母是S的员工
select * from emp where ename like 'S%';
-- 查找第三个字母是O的员工
select * from emp where ename like '__O%';
-- in 关键字
select * from emp where empno in(7788, 7566);
-- 查找没有上级的员工
select * from emp where mgr is null;
-- 查找工资大于500 或是岗位为 manager 的员工,同时首字母必须是大写的J
select * from emp where (sal >= 500 or job = 'MANAGE') AND ename like 'J%';
-- 工资升序
select * from emp order by sal asc; -- 默认
select * from emp order by sal desc;
-- 部门号升序,工资降序
select * from emp order by deptno, sal desc;
-- 年薪降序
select ename, (nvl(sal, 0)+ nvl(comm, 0))*12 "年薪" from emp order by "年薪" desc; -- oracle
select ename, (ifnull(sal, 0)+ ifnull(comm, 0))*12 as yearly_salary from emp order by yearly_salary desc; -- mysql,mysql 不可以使用中文别名排序
-- 工资最高和最低的员工
select * from emp where sal=(select max(sal) from emp) or sal=(select min(sal) from emp);
-- 所有员工的平均工资和工资总和以及最高工资
select avg(sal) 平均工资, sum(sal) 工资总和, max(sal) 最高工资 from emp;
-- 工资高于平均工资的员工
select * from emp where sal >= (select avg(sal) from emp);
-- 显示每个部门的平均工资和最高工资
select deptno, avg(sal), max(sal) from emp group by deptno;
-- 显示每个部门每个岗位的平均工资和最高工资
select deptno, job, avg(sal), max(sal) from emp group by deptno, job order by deptno;
-- 显示平均工资低于2000的部门的编号和平均工资
select deptno, avg(sal) from emp group by deptno having avg(sal) < 2000 order by avg(sal);
-- 分组函数只能出现在选择列、having及order by 子句中
sql 单表查询练习的更多相关文章
- SQL单表查询案例
表(emp)结构 (1)查询部门编号为10中所有经理,部门编号为20中所有销售员,还有即不是经理又不是销售员但其工资大或等于20000的所有员工详细资料. SELECT * FROM emp ; (2 ...
- SQL单表查询
--1,选择不猛30中的雇员 SELECT * FROM EMP WHERE DEPTNO = 30; --2,列出所有办事员的姓名,编号和部门 SELECT ENAME,EMPNO,DEPTNO F ...
- SQL数据查询之——单表查询
一.SQL数据查询的一般格式 数据查询是数据库的核心操作.SQL提供了SELECT语句进行数据查询,其一般格式为: SELECT [ALL | DISTINCT]<目标列表达式>[,< ...
- 【T-SQL基础】01.单表查询-几道sql查询题
概述: 本系列[T-SQL基础]主要是针对T-SQL基础的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础]02.联接查询 [T-SQL基础]03.子查询 [T-SQL基础 ...
- SQL基本查询_单表查询(实验二)
SQL基本查询_单表查询(实验二) 查询目标表结构及数据 emp empno ename job hiedate sal comn deptno 1007 马明 内勤 1992-6-12 4000 2 ...
- springdata 查询思路:基本的单表查询方法(id,sort) ---->较复杂的单表查询(注解方式,原生sql)--->实现继承类---->复杂的多表联合查询 onetomany
springdata 查询思路:基本的单表查询方法(id,sort) ---->较复杂的单表查询(注解方式,原生sql)--->实现继承类---->复杂的多表联合查询 onetoma ...
- sql多表查询(单表查询略过)
表library: 表borrow: 表reader: 1.等值连接:(常用) 原理:将多张表组合成一个逻辑大表,即字段相加记录相乘(笛卡尔积). 语法:select * from 表A,表B whe ...
- sql语句-单表查询
一:单表查询 CREATE TABLE `Score`( `s_id` ), `c_id` ), `s_score` ), PRIMARY KEY(`s_id`,`c_id`) ); ); ); ); ...
- SQL基础--查询之一--单表查询
SQL基础--查询之一--单表查询
随机推荐
- Springboot 打jar包分离lib,配置文件正确方式(二)
Springboot 打jar包分离lib,配置文件正确方式(二) 背景 从<Springboot 打jar包分离lib,配置文件正确方式>中,可以达到把配置文件和依赖第三方的jar包分离 ...
- VSTO学习(二)——Excel对象模型
要开发Excel的项目,就自然少不了对Excel对象模型的了解了,只有了解Excel对象模型,这样才能更好地对Excel进行处理.下面先给出一张Excel对象模型的图: 下面就具体对上图中的各个对象做 ...
- 剑指offer二十八之数组中出现次数超过一半的数字
一.题目 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2. ...
- 第6章—渲染web视图—SpringMVC+Thymeleaf 处理表单提交
SpringMVC+Thymeleaf 处理表单提交 thymleaf处理表单提交的方式和jsp有些类似,也有点不同之处,这里操作一个小Demo,并说明: 1.demo的结构图如下所示: pom.xm ...
- 【数组】Maximum Product Subarray
题目: Find the contiguous subarray within an array (containing at least one number) which has the larg ...
- SPSS学习系列之SPSS Modeler的帮助文档怎么调出来使用?
不多说,直接上干货! 欢迎大家,加入我的微信公众号:大数据躺过的坑 人工智能躺过的坑 同时,大家可以关注我的个人博客: http://www.cnblogs.com/z ...
- 自己动手实现一个WEB服务器
自己动手实现一个 Web Server 项目背景 最近在重温WEB服务器的相关机制和原理,为了方便记忆和理解,就尝试自己用Java写一个简化的WEB SERVER的实现,功能简单,简化了常规服务器的大 ...
- 面试题30:KMP 字符串查找
参考:http://www.ruanyifeng.com/blog/2013/05/Knuth%E2%80%93Morris%E2%80%93Pratt_algorithm.html自己写的很简单的K ...
- Android应用博客目录
应用有很多,开个博客都放进来方便查找,也方便修改 1 语言类: 1.1 JAVA 基础语言知识JAVA Collection与Collections,Array与Arrays的区别 JAVA练手--S ...
- [转]验证发生前无法调用 Page.IsValid。应在 CausesValidation=True 且已启动回发的控件
在ASP.Net中,为了方便表单的验证,提供了验证控件来完成表单输入数据的验证.这些验证控件确实是功能强大,为写表单程序提供了极大的便利.但是,在不熟悉的情况下,经常碰到问题.其中,最常见的是遇到错误 ...