SQL练习汇总
--1.选择部门30中的所有员工.
select * from emp where deptno=30
--2.列出所有办事员(CLERK)的姓名,编号和部门编号.
select ename,empno,deptno from emp where job='CLERK'
--3.找出佣金高于薪金的员工.
select * from emp where sal<comm
--4.找出佣金高于薪金的60%的员工.
select * from emp where sal*0.6 <comm
--5.找出部门10中所有经理(MANAGER)和部门20中所有办事员(CLERK)的详细资料.
select * from emp where (job='MANAGER' and deptno=10) or (deptno=20 and job='CLERK')
--6.找出部门10中所有经理(MANAGER),部门20中所有办事员(CLERK),既不是经理又不是办事员但其薪金大于或等于2000的所有员工的详细资料.
select * from emp where (job='MANAGER' and deptno=10) or (deptno=20 and job='CLERK')or (job<>'MANAGER' and job<>'CLERK' and sal>=2000)
--7.找出收取佣金的员工的不同工作.
select distinct job from emp where comm is not null
--8.找出不收取佣金或收取的佣金低于100的员工.
select * from emp where comm is null or comm <100
--9.找出各月倒数第3天受雇的所有员工.
select * from emp where hiredate=last_day(hiredate)-2
--10.找出早于12年前受雇的员工.
--11.以首字母大写的方式显示所有员工的姓名
select INITCAP(ename) from emp
--12.显示正好为5个字符的员工的姓名.
select ename from emp where length(ename)=5
--13.显示不带有"R"的员工的姓名.
select * from emp where ename not like '%R%'
--14.显示所有员工姓名的前三个字符.
select substr(ename,1,3) from emp
--15.显示所有员工的姓名,用a替换所有"A"
select replace(ename,'A','a') from emp
--16.显示满35年服务年限的员工的姓名和受雇日期.
select ename,hiredate, floor((sysdate-hiredate)/365) from emp where (sysdate-hiredate)/365>35
--17.显示员工的详细资料,按姓名排序.
select * from emp order by ename
--18.显示员工的姓名和受雇日期,根据其服务年限,将最老的员工排在最前面.
select ename ,hiredate,floor((sysdate-hiredate)/365) years from emp order by hiredate asc
--19.显示所有员工的姓名、工作和薪金,按工作的降序排序,若工作相同则按薪金排序.
select ename,job,sal from emp order by job desc,sal
--20.显示所有员工的姓名、加入公司的年份和月份,按受雇日期所在月排序,若月份相同则将最早年份的员工排在最前面.
select ename,hiredate,to_char(hiredate,'yyyy') years,to_char(hiredate,'mm') ms from emp order by ms,hiredate
--21.显示在一个月为30天的情况所有员工的日薪金,忽略余数.
select floor((sal+nvl(comm,0))/30) from emp
--22.找出在(任何年份的)2月受聘的所有员工。
select * from emp where to_char(hiredate,'mm')=2
--23.对于每个员工,显示其加入公司的天数.
select ename,sysdate-hiredate from emp
--24.显示姓名字段的任何位置包含"A"的所有员工的姓名.
select * from emp where ename like '%A%'
--25.以年月日的方式显示所有员工的服务年限.
select ename,floor(floor(months_between(sysdate,hiredate))/12),mod(floor(months_between(sysdate,hiredate)),12),floor(mod(sysdate-hiredate,30)) from emp
SQL练习汇总的更多相关文章
- SQL小汇总
SQL小汇总 1.对每个时段的数据进行统计2.查询时间条件(to_date)3.插入序列号和系统时间4.查询当天.7天内.30天内5.查询前后x小时.分钟.天.月.6.保留小数点后4位7.查询字段A中 ...
- SQL语句汇总(终篇)—— 表联接与联接查询
上一篇博文说到相关子查询效率低下,那我们怎么能将不同表的信息一起查询出来呢?这就需要用到表联接. 和之前的UNION组合查询不同,UNION是将不同的表组合起来,也就是纵向联接,说白了就是竖着拼起来. ...
- SQL语句汇总(一)——数据库与表的操作以及创建约束
首先,非常感谢大家对上篇博文的支持,真是让本菜受宠若惊,同时对拖了这么久才出了此篇表示抱歉. 前言:此文旨在汇总从建立数据库到联接查询等绝大部分SQL语句.SQL语句虽不能说很多,但稍有时间不写就容易 ...
- 初级SQL开发汇总指南
汇总部分内容来自网络(作者 :zhtbs),比较基础的东西,能够了解比较基础的一些东西. Select语句概要 数据库中数据的提取(查询)使用select 语法,主要有以下几点作用 l 提取的数据 ...
- SQL语句汇总(终篇)—— 表联接与联接查询
既然是最后一篇那就不能只列出些干枯的标准语句,更何况表联接也是SQL中较难的部分,所以此次搭配题目来详细阐述表联接. 上一篇博文说到相关子查询效率低下,那我们怎么能将不同表的信息一起查询出来呢?这就需 ...
- SQL语句汇总(一)——数据库与表的操作以及创建约束
首先,非常感谢大家对上篇博文的支持,真是让本菜受宠若惊,同时对拖了这么久才出了此篇表示抱歉. 前言:此文旨在汇总从建立数据库到联接查询等绝大部分SQL语句.SQL语句虽不能说很多,但稍有时间不写就容易 ...
- SQL练习题汇总(Sqlserver和Mysql版本)
所需表及数据执行脚本: CREATE TABLE STUDENT (SNO ) NOT NULL, SNAME ) NOT NULL, SSEX ) NOT NULL, SBIRTHDAY DATET ...
- MS SQL 分类汇总参数 grouping(**)=1 rollup cubt
转:http://www.111cn.net/database/mssqlserver/43368.htm 本文章介绍了关于sql多级分类汇总实现方法及数据结构,有碰到问题的同学可参考一下. 据库结构 ...
- 基本Sql语句汇总
关于Sql语句的学习,选择的DBMS为SQL Server,Sql语句随着工作中的应用不断补充,不具备系统性,为个人笔记汇总,网上有很多优秀的资源,故不对每一处应用做过多细致的说明,后期会对部分篇幅较 ...
- SQL基础-汇总统计及GROUP BY
一.汇总统计 1.聚集函数 COUNT() 计算总数 SUM() 求和 MAX() 最大值 MIN() 最小值 AVG() 平均值 2.聚集函数使用 总共有多少名学生? SELECT COUNT(*) ...
随机推荐
- 利用百度智能云结合Python体验图像识别(转载来自qylruirui)
https://blog.csdn.net/qylruirui/article/details/94992917 利用百度智能云结合Python体验图像识别只要注册了百度账号就可以轻松体验百度智能云中 ...
- CentOS8 安装 simple-scan 的方法
CentOS8删除了很多软件包,解决的思路一般是从CentOS7或EPEL7的软件仓库中寻找,并解决依赖关系. 比如找到EPEL7中有 simple-scan 软件包,但安装时发现其又依赖 gnome ...
- Java泛型(5):擦除与补偿
先看一个例子: Class<?> c1 = new ArrayList<String>().getClass(); Class<?> c2 = new ArrayL ...
- vue项目windowServer nginx下部署
https://www.cnblogs.com/jiangwangxiang/p/8481661.html nginx下载地址 http://nginx.org/en/download.html 下载 ...
- ASP.NET Core 入门笔记7,ASP.NET Core MVC 视图布局入门
一.前言 1.本教程主要内容 ASP.NET Core MVC (Razor)视图母版页教程 ASP.NET Core MVC (Razor)带有Section的视图母版页教程 ASP.NET Cor ...
- Nmap简介
nmap — 网络探测工具和安全/端口扫描器,参考<Nmap参考指南> 描述: Nmap (“Network Mapper(网络映射器)”) 是一款开放源代码的 网络探测和安全审核的工具. ...
- AttributeError: module 'unittest' has no attribute 'TestCase'
一个自己给自己挖的坑 大家千万不要用库的名称命名,特别是刚刚入门的时候.文件夹.文件,都不要用库的名称. 一旦与库重名,就会出现这种 AttributeError. 引以为戒,以后我再这么命名,我就是 ...
- prometheus 监控 jar应用服务 + 修改监听IP和端口
1.修改服务的启动脚本 [root@do1cloud01 init.d]# vim learn-school nohup ${JAVA_HOME}/bin/java -javaagent:/usr/l ...
- MySQL连接处理方式及最佳并发连接数设置
MySQL连接处理方式及最佳并发连接数设置 mysql是单进程,多线程的架构,通过创建多个线程来服务不同的用户连接,通常情况下,随着用户连接数的增加,mysql内部用于处理用户连接的线程也会同步的增长 ...
- Golang结构体struct的使用(结构体嵌套, 匿名结构体等)
转自: https://studygolang.com/articles/11313 golang中是没有class的,但是有一个结构体struct,有点类似,他没有像java,c++中继承的概念,但 ...