SQL语法练习: 1,选择部门30中的所有员工 select * from emp where deptno=30; 2,列出办事员的姓名,编号和部门编号 select ename, empno, deptno from emp where job=upper('clerk'); 3,找出佣金高于薪金的员工 select * from emp where comm>sal ; 4,找出佣金高于薪金的60%的员工 select * from emp where comm > sal * 0.6; 5,找出部门10中所有经理和部门20中所有办事员的详细资料 select * from emp where (deptno=10 and job='manager') or ( deptno=20 and job='clerk' ); 6,找出部门10中所有经理,部门20中所有办事员,既不是经理也不是办事员但其薪金大于或等于2000的所有员工 的详细资料 select * from emp where (deptno=20 and job='manager')or(deptno=20 and job='clerk') or (job NOT IN('manager', '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,找出各月倒数第三天受雇的所有员工 select * from emp where last_day(hiredate)-2 =hiredate ; 10,找出早于12年前受雇的员工 select * from emp where (months_between(sysdate, hiredate) /12 ) > 12 ; 11,以首字母大学的方式显示所有员工的姓名 select initcap(ename) from emp; 12,显示正好为5个字符的员工的姓名 select ename from emp where length(ename)=5 ; 13,显示不带’R‘的员工的姓名 select ename from emp where ename not like '%R%' ; 14,显示所有员工姓名的前三个字符 select substr(ename,0,3) from emp ; 15,显示所有员工姓名,用’a‘替换所有的’A‘ select replace(ename, 'A','a') from emp ; 16,显示满10年服务年限的员工的姓名和受雇日期 select ename ,hiredate from emp where (months_between(sysdate, hiredate) /12 ) > 10 ; 17,显示员工的详细信息,按姓名排序 select * from emp order by ename; 18,显示员工的姓名和受雇日期,根据其服务年限,将最老的员工排在最前面 select ename, hiredate from emp order by hiredate; 19,显示所有员工的姓名,工作和薪金,按工作的降序排序,若工作相同则按薪金排序 select ename , job, sal from emp where job desc, sal ; 20,显示所有员工的姓名,加入公司的年份和月份,按受雇日期所在月排序,若月份相同则将最早年份的员工排在最前面 select ename,to_char(hiredate,'yyyy') year, to_char(hiredate,'yy') months from emp order by months ,year ; 21,显示在一个月为30天的情况的所有员工的日薪金,忽略余数 select ename ,round(sal/30) from emp 22,找出在任何年份的2月受聘的所有员工 select * from emp where to_char(hiredate,'mm') = 2 ; 23,对于每个员工,显示其加入公司的天数 select ename, round(sysdate-hiredate) days from emp ; 24,显示姓名字段的任何位置包含’A‘的所有员工的姓名 select * from emp where ename like '%A%' ; 25,以年月日的方式显示所有员工的服务年限。 select ename ,trunc( months_between( sysdate , hiredate )/12 ) years, trunc( mod( months_between( sysdate,hiredate ),12 ) ) months, trunc( mod( (sysdate-hiredate),30 ) )days from emp ;
Oracle学习系列2的更多相关文章
-
Oracle学习系列1-7
Oracle学习系列1 两个服务必须启动: OracleOraDb10g*TNListener 和 OracleService*** 使用sqlplusw先进行环境的设置 set linesize 3 ...
-
Oracle学习系列7
Oracle学习系列7 ************************************************************************************ 关联表 ...
-
Oracle学习系列6
Oracle学习系列6 ************************************************************************************ 删除约 ...
-
Oracle学习系列5
Oracle学习系列5 ************************************************************************************ ,掌握 ...
-
Oracle学习系列4
Oracle学习系列4 ************************************************************************************ 数据库 ...
-
Oracle学习系列3
Oracle学习系列3 ************************************************************************************ 多表查 ...
-
Oracle学习系列1
两个服务必须启动: OracleOraDb10g*TNListener 和 OracleService*** 使用sqlplusw先进行环境的设置 set linesize 300 ; set pag ...
-
oracle学习系列之四 (视图)
视图视图是数据库中特有的对象.视图用于存储查询,但不会存储数据(物化视图除外).这是视图和数据表的重要区别.可以利用视图进行查询,插入,更新和删除数据.Oracle有如下四种视图(关系视图,内嵌视图, ...
-
oracle学习系列之三 (约束)
主键约束:外键约束:唯一性约束:检查约束:默认值约束 -——————五大约束 一. 主键约束: --创建表的主键约束 create table student (student_id number ...
-
Oracle 学习系列之二(会话与事务级临时表和dual表 )
一. 会话临时表 --创建会话临时表create global temporary table tmp_user_session(user_id int, user_name varchar2(20) ...
随机推荐
-
Django缓存系统设置
参考: http://lesliezhu.github.io/public/2016/04/19/django-cache.html http://www.opscoder.info/django_c ...
-
B-树,B+树,B*树详解
B-树 B-树是一种多路搜索树(并不一定是二叉的) 1970年,R.Bayer和E.mccreight提出了一种适用于外查找的树,它是一种平衡的多叉树,称为B树(或B-树.B_树). 一棵m阶B树(b ...
-
OpenJudge 2979 陪审团的人选 / Poj 1015 Jury Compromise
1.链接地址: http://bailian.openjudge.cn/practice/2979 http://poj.org/problem?id=1015 2.题目: 总Time Limit: ...
-
一张图搞懂 Javascript 中的原型链、prototype、__proto__的关系 转载加自己的总结
1. JavaScript内置对象 所谓的内置对象 指的是:JavaScript本身就自己有的对象 可以直接拿来就用.例如Array String 等等.JavaScript一共有12内置对象 ...
-
LeetCode——Symmetric Tree
Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). For e ...
-
Android 之 ServiceManager与服务管理
ServiceMananger是android中比较重要的一个进程,它是在init进程启动之后启动,从名字上就可以看出来它是用来管理系统中的service.比如:InputMethodService. ...
-
CSS限制字数,超出部份显示点点点...
最近项目中需要用CSS实现限制字数,超出部份显示点点点...,只需要一下代码即可: width:400px;/*要显示文字的宽度*/ text-overflow :ellipsis; /*让截断的文字 ...
-
ES6 对象的扩展 Object.is()
ES5 比较两个值是否相等,只有两个运算符:相等运算符(==)和严格相等运算符(===).它们都有缺点,前者会自动转换数据类型,后者的NaN不等于自身,以及+0等于-0. ES6 提出“Same-va ...
-
【代码笔记】iOS-ios7 StatusBar
代码: RootViewController.m #import "RootViewController.h" @interface RootViewController () @ ...
-
Ubuntu下Sublime Text 2优化配置
以前经常用Notepad++,最近因为需要长期在Linux环境下进行C开发,就使用了sublime Text 2,这里就不介绍基本的了主要针对我使用的经验中进行一些总结. 1.pacage contr ...