创建一个表记员工个人信息:

              --创建一个表
create table plspl_company_info(
empno number(5) not null,
ename varchar2(10) not null,
job varchar2(10),
manager number(5),
hiredate date,
sal number(5),
comm number(5),
deptno number(3)
); insert into plspl_company_info values (7369, 'SMITH', 'CLERK', 7902, date '1980-12-17', 800, NULL, 10);
insert into plspl_company_info values (7293, 'ALLEN', 'SALESMAN', 7689, date '1981-03-27', 1867, NULL, 20);
insert into plspl_company_info values (7562, 'JAMES', 'SALESMAN', 7689, date '1981-09-11', 1796, NULL, 20);
insert into plspl_company_info values (7936, 'JONES', 'ANAYST', 7656, date '1980-09-01', 3250, NULL, 30);
insert into plspl_company_info values (7688, 'WEST', 'MANAGER', 7839, date '1981-02-28', 2985, 900, 40);
insert into plspl_company_info values (7499, 'PAUL', 'MANAGER', 7839, date '1980-03-26', 3600, NULL, 40);
insert into plspl_company_info values (7778, 'FORD', 'CLERK', 7902, date '1987-04-17', 960, NULL, 10);
insert into plspl_company_info values (7289, 'ADAMS', 'SALESMAN', 7689, date '1980-01-09', 1956, NULL, 20);
insert into plspl_company_info values (7531, 'MATIN', 'SALESMAN', 7689, date '1980-05-14', 1906, NULL, 20);
insert into plspl_company_info values (7916, 'KING', 'ANAYST', 7656, date '1982-06-04', 2864, NULL, 30);
insert into plspl_company_info values (7365, 'BLKAE', 'CLERK', 7902, date '1981-09-11', 1200, 1100, 10);
insert into plspl_company_info values (7784, 'CHRIS', 'CLERK', 7902, date '1981-07-16', 1376, NULL, 10); select * from plspl_company_info; 执行结果:

SQL>

Table created

1 row inserted

1 row inserted

1 row inserted

1 row inserted

1 row inserted

1 row inserted

1 row inserted

1 row inserted

1 row inserted

1 row inserted

1 row inserted

1 row inserted

EMPNO ENAME JOB MANAGER HIREDATE SAL COMM DEPTNO
------ ---------- ---------- ------- ----------- ------ ------ ------
7369 SMITH CLERK 7902 1980/12/17 800 10
7293 ALLEN SALESMAN 7689 1981/3/27 1867 20
7562 JAMES SALESMAN 7689 1981/9/11 1796 20
7936 JONES ANAYST 7656 1980/9/1 3250 30
7688 WEST MANAGER 7839 1981/2/28 2985 900 40
7499 PAUL MANAGER 7839 1980/3/26 3600 40
7778 FORD CLERK 7902 1987/4/17 960 10
7289 ADAMS SALESMAN 7689 1980/1/9 1956 20
7531 MATIN SALESMAN 7689 1980/5/14 1906 20
7916 KING ANAYST 7656 1982/6/4 2864 30
7365 BLKAE CLERK 7902 1981/9/11 1200 1100 10
7784 CHRIS CLERK 7902 1981/7/16 1376 10

12 rows selected

SQL>

习题:

1,选出部门30里的所有员工信息

select * from plspl_company_info where deptno = 30;

2,列出所有办事员(CLERK)的姓名,编号和部门编号

select ename, empno , deptno from  plspl_company_info where job = 'CLERK';

3,找出佣金高于薪金60%的员工

select * from plspl_company_info where comm > sal*0.6 ;

4,找出部门10的所有经理(MANAGER)和部门20的所有办事员(CLERK)

select * from plspl_company_info where (deptno = 10 and job = 'MANAGER') or (deptno = 20 and job = 'CLERK') ;

5,找出部门10的所有经理(MANAGER)和部门20的所有办事员(CLERK),以及既不是经理有不是办事员,但薪金大于或等于2000的所有员工的详细资料

select *
from plspl_company_info
where (deptno = 10 and job = 'MANAGER') or (deptno = 20 and job = 'CLERK') or ((job not in('MANAGER', 'CLERK')) and sal >= 2000) ;

6,找出收取佣金的员工的不同工作

select distinct job from plspl_company_info where comm is not null ;

7,找出不收取佣金或者收取佣金低于100的员工

select * from plspl_company_info where (comm is  null) or comm < 100 ;

8,显示不带“R”的员工姓名

select * from plspl_company_info where ename not like '%A%';

9,显示姓名字段的任何位置包含'A'的所有员工的姓名,显示结果按照基本工资由高到低;如果工资相同,则按照雇佣年限由早到晚排序;如果雇佣时间相同,则按照职位排序

select * from plspl_company_info where ename like '%A%' order by sal DESC, hiredate, job;

SQL简单语句总结习题的更多相关文章

  1. Oracle笔记 六、PL/SQL简单语句块、变量定义

    1.简单SQL语句,HellWorld示例 --输出信息 begin dbms_output.put_line('Oracle Hello World!'); end; 2.变量的定义.使用 --定义 ...

  2. SQL简单语句(增删改查)

    简单的SQL语句增删改查操作 说明: 在mysql里面亲测结果正确    用到的表(学生表:studnets) 1.创建一个学生表,(学号,姓名,性别,家庭住址) mysql> create t ...

  3. mysql简单的sql操作语句

    一,常用.简单的SQL操作语句 1.数据库操作: 1)创建数据库: create database database_name: 创建并设置字符编码 create database database_ ...

  4. log4j.xml简单配置实现在控制台打印sql执行语句【加注释】

    转: log4j.xml简单配置实现在控制台打印sql执行语句 2017年09月27日 13:02:34 艾然丶 阅读数 8804   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协 ...

  5. [转]MySQL 最基本的SQL语法/语句

    MySQL 最基本的SQL语法/语句,使用mysql的朋友可以参考下.   DDL-数据定义语言(Create,Alter,Drop,DECLARE) DML-数据操纵语言(Select,Delete ...

  6. sql查询语句如何解析成分页查询?

    我们公司主要mysql存储数据,因此也封装了比较好用mysql通用方法,然后,我们做大量接口,在处理分页查询接口,没有很好分查询方法.sql查询 语句如何解析成“分页查询”和“总统计”两条语句.可能, ...

  7. 15个初学者必看的基础SQL查询语句

    本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 本文将分享15个初学者必看的基础SQL查询语句,都很基础,但是你不一定都会,所以好好看看吧. 1.创建表和数据插 ...

  8. MVC 学习(二)之Linq to Sql 简单Demo

    Linq to Entities 已经我的一篇博文中阐述了,这里阐述一下简单的Linq to Sql 的增删改查.Linq to sql 与Linq to Entities虽然同属于DataBase- ...

  9. SQL查询语句去除重复行

    1.存在两条完全相同的纪录 这是最简单的一种情况,用关键字distinct就可以去掉 select distinct * from table(表名) where (条件) 2.存在部分字段相同的纪录 ...

随机推荐

  1. Docker镜像

    docker镜像123? 额,由于没有实验环境,没有亲手实践,因此理解可能有不对的地方. 反正也是学习笔记,以后再修改吧... docker的镜像跟virtualbox的镜像不一样.在虚拟机中,镜像是 ...

  2. 前端那点事儿——Tocify自动生成文档目录

    今天偶然间看到文档服务器有一个动态目录功能,点击目录能跳转到指定的位置:窗口滑动也能自动更新目录的焦点. 效果 框架 原来使用的是一个开源的jquery-ui控件——tocify.js,它可以遍历页面 ...

  3. iOS---类方法(静态方法)和实例方法

    类方法   实例方法是以+开头的方法, 实例方法是用实例对象访问:   类方法的对象是类而不是实例,通常用来创建对象或者工具类.     在实例方法里,根据继承原理发送消息给self和super其实都 ...

  4. ASPNET_WEBAPI快速学习02

    这部分内容的学习,已经放了大半年时间了,果断补充上,尽早将过去遗留的老技术坑都补上.首先将介绍服务幂等性的概念和相关解决方案,这部分也将是本文的理解难点,由于WebAPI是一种Restful风格服务的 ...

  5. iOS越狱开发(一)

    做越狱开发也有一些时间了,有很多东西想总结一下,希望给他人一些借鉴,也是自己对过去开发经历的一些总结.个人不推荐使用盗版,这里主要以技术介绍为主. 这个系列里面主要介绍怎样进行越狱开发,涉及到以下几个 ...

  6. 通过Class获取标签,兼容的几种思路

    在js中通过document.getElementsByClassName()在低版本IE浏览器中不兼容.然后我写了几种方案,大家可以参考参考. html代码 <!DOCTYPE html> ...

  7. Android开发之注册登录

    昨天给大家介绍了一下关于Android端向服务器端发送数据的方法,不过貌似有一点瑕疵,今天经过调试已经解决,在这里给大家介绍一下 貌似Android4.0以后版本的对于网络权限要求变得严格,导致昨天编 ...

  8. 后端码农谈前端(CSS篇)第三课:选择器

    一.选择器 1.ID选择器: 语法:首先,ID 选择器前面有一个 # 号 - 也称为棋盘号或井号.请看下面的规则: *#intro {font-weight:bold;} 与类选择器一样,ID 选择器 ...

  9. AngularJs ui-router 路由的简单介绍

    之前有写过一篇关于Angular自带的路由:ngRoute.今天来说说Angular的第三方路由:ui-router.那么有人就会问:为什么Angular有了自带的路由,我们还需要用ui-router ...

  10. Android之Notification介绍

    Notification就是在桌面的状态通知栏.这主要涉及三个主要类: Notification:设置通知的各个属性. NotificationManager:负责发送通知和取消通知 Notifica ...