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基础--查询之一--单表查询
随机推荐
- easyUI制作slider小滑块,可拖动和精确输入
借助easyUI制作.完善slider小滑块. 可拖动.和在右边输入框精确输入 效果图: html代码: <div class="text_fl" >亮度设置:< ...
- 用expect解决批量Linux集群机器间SSH免密码访问
转自:http://blog.csdn.net/aichaoguy/article/details/11693269#!/bin/bash #check whether package 'expect ...
- django框架--底层架构
目录 零.参考 一.对于web服务的理解 二.对于wsgi协议的理解 三.自定义一个简单的基于wsgi协议的web框架 四.django中的server实现 五.django中的application ...
- (转)MYSQL线程池总结(一)
MYSQL线程池总结(一) 原文:http://www.cnblogs.com/cchust/p/4510039.html 线程池是Mysql5.6的一个核心功能,对于服务器应用而言,无论是web应 ...
- android view知识点 总结
DecorView : http://www.jianshu.com/p/5aa96683d0dc 安卓事件分发机制: http://blog.csdn.net/guolin_blog/article ...
- EF基础知识小记五(一对多、多对多处理)
本文主要讲EF一对多关系和多对多关系的建立 一.模型设计器 1.一对多关系 右键设计器新增关联 导航属性和外键属性可修改 2.多对多关系 右键设计器新增关联 模型设计完毕之后,根据右键设计器根据模型生 ...
- Linux vim 编辑命令
vi命令命令模式:yy:复制 光标所在的这一行 4yy:复制 光标所在行开始向下的4行p: 粘贴dd:剪切 光标所在的这一行2dd:剪切 光标所在行 向下 2行D:从当前的光标开始剪切,一直到行末d0 ...
- 如何删除Eclipse里某个工作空间?
很多时候,一个Eclipse中或多或少的都会有那么几个工作空间(workspace),但是久而久之你会发现有些工作空间你觉得不再需要了或者觉得碍眼,怎么办? 其实很简单,方法有两种. 1.打开你的Ec ...
- linux svn 开机启动
在/etc/init.d中建立svnboot,内容如下: #!/bin/bash if [ ! -f "/usr/bin/svnserve" ] then echo "s ...
- chown -R 用户名:组名 ./ 及 chown用法介绍
当我们在不通过yum(CentOS).apt-get(Ubuntu)来安装MySQL的时候,通常执行以下命令来改变目录的拥有者: [root@localhost ~]# chown -R mysql: ...