本文使用的实例表结构与表的数据如下:

scott.emp员工表结构如下:

 
SQL> DESC SCOTT.EMP; Name     Type         Nullable Default Comments  -------- ------------ -------- ------- --------  EMPNO    NUMBER(4)                     员工编号   ENAME    VARCHAR2(10) Y                员工姓名   JOB      VARCHAR2(9)  Y                职位      MGR      NUMBER(4)    Y                上级编号   HIREDATE DATE         Y                雇佣日期   SAL      NUMBER(7,2)  Y                薪金      COMM     NUMBER(7,2)  Y                佣金      DEPTNO   NUMBER(2)    Y                所在部门编号 --提示:工资 = 薪金 + 佣金
 

scott.dept部门表

SQL> DESC SCOTT.DEPT; Name   Type         Nullable Default Comments  ------ ------------ -------- ------- --------  DEPTNO NUMBER(3)                     部门编号   DNAME  VARCHAR2(14) Y                部门名称   LOC    VARCHAR2(13) Y                地点

scott.emp表的现有数据如下:

 

 
SQL> SELECT * FROM SCOTT.EMP;   EMPNO ENAME      JOB         MGR HIREDATE          SAL      COMM DEPTNO ----- ---------- --------- ----- ----------- --------- --------- ------  7369 SMITH      CLERK      7902 1980-12-17     800.00               20  7499 ALLEN      SALESMAN   7698 1981-2-20     1600.00    300.00     30  7521 WARD       SALESMAN   7698 1981-2-22     1250.00    500.00     30  7566 JONES      MANAGER    7839 1981-4-2      2975.00               20  7654 MARTIN     SALESMAN   7698 1981-9-28     1250.00   1400.00     30  7698 BLAKE      MANAGER    7839 1981-5-1      2850.00               30  7782 CLARK      MANAGER    7839 1981-6-9      2450.00               10  7788 SCOTT      ANALYST    7566 1987-4-19     4000.00               20  7839 KING       PRESIDENT       1981-11-17    5000.00               10  7844 TURNER     SALESMAN   7698 1981-9-8      1500.00      0.00     30  7876 ADAMS      CLERK      7788 1987-5-23     1100.00               20  7900 JAMES      CLERK      7698 1981-12-3      950.00               30  7902 FORD       ANALYST    7566 1981-12-3     3000.00               20  7934 MILLER     CLERK      7782 1982-1-23     1300.00               10   102 EricHu     Developer  1455 2011-5-26 1   5500.00     14.00     10   104 huyong     PM         1455 2011-5-26 1   5500.00     14.00     10   105 WANGJING   Developer  1455 2011-5-26 1   5500.00     14.00     10   17 rows selected
 

Scott.dept表的现有数据如下:

 
SQL> SELECT * FROM SCOTT.DEPT;   DEPTNO DNAME          LOC ------ -------------- -------------    110 信息科         海口     10 ACCOUNTING     NEW YORK     20 RESEARCH       DALLAS     30 SALES          CHICAGO     40 OPERATIONS     BOSTON     50 50abc          50def     60 Developer      HaiKou   7 rows selected
 

用SQL完成以下问题列表:

 
1. 找出EMP表中的姓名(ENAME)第三个字母是A 的员工姓名。 2. 找出EMP表员工名字中含有A 和N的员工姓名。 3. 找出所有有佣金的员工,列出姓名、工资、佣金,显示结果按工资从小到大,佣金从大到小。 4. 列出部门编号为20的所有职位。 5. 列出不属于SALES 的部门。 6. 显示工资不在1000 到1500 之间的员工信息:名字、工资,按工资从大到小排序。 7. 显示职位为MANAGER 和SALESMAN,年薪在15000 和20000 之间的员工的信息:名字、职位、年薪。 8. 说明以下两条SQL语句的输出结果: SELECT EMPNO,COMM FROM EMP WHERE COMM IS NULL; SELECT EMPNO,COMM FROM EMP WHERE COMM = NULL; 9. 让SELECT 语句的输出结果为 SELECT * FROM SALGRADE; SELECT * FROM BONUS; SELECT * FROM EMP; SELECT * FROM DEPT; …… 列出当前用户有多少张数据表,结果集中存在多少条记录。 10. 判断SELECT ENAME,SAL FROM EMP WHERE SAL > '1500'是否抱错,为什么?
 

各试题解答如下(欢迎大家指出不同的方法或建议!):

 
--------1. 找出EMP表中的姓名(ENAME)第三个字母是A 的员工姓名。--------- SQL> SELECT ENAME FROM SCOTT.EMP WHERE ENAME LIKE '__A%';   ENAME ---------- ADAMS BLAKE CLARK
-------2. 找出EMP表员工名字中含有A 和N的员工姓名。---------- SQL> SELECT ENAME FROM SCOTT.EMP WHERE ENAME LIKE '%A%' AND ENAME LIKE '%N%';   ENAME ---------- ALLEN MARTIN WANGJING --------或-------- SQL> SELECT ENAME FROM SCOTT.EMP WHERE ENAME LIKE '%A%N%';   ENAME ---------- ALLEN MARTIN WANGJING

------具体的见:http://www.cnblogs.com/huyong/archive/2011/06/16/2082581.html

oracle查询语句2【转载】的更多相关文章

  1. oracle查询语句【转载】

    建立的表: 表名:REGIONS 序号 列名 数据类型 长度 小数位 标识 主键 允许空 默认值 说明 1 REGION_ID NUMBER 是 否 2 REGION_NAME VARCHAR2 25 ...

  2. 45 个非常有用的 Oracle 查询语句

    ​ 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快 ...

  3. 40多个非常有用的Oracle 查询语句

    给大家介绍是40多个非常有用的Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有Oracle 开发者都必备的技能,所以快快收藏吧! 日期 ...

  4. 45个非常有用的 Oracle 查询语句小结

    45个非常有用的 Oracle 查询语句小结 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 ...

  5. 45 个非常有用的 Oracle 查询语句(转)

    这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快快收 ...

  6. 40+ 个非常有用的 Oracle 查询语句

    40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快快收藏吧! 日期/时间 ...

  7. 45个很实用的 Oracle 查询语句小结

     这里我们介绍的是 40+ 个很实用的 Oracle 查询语句,主要涵盖了日期操作,获取server信息.获取运行状态.计算数据库大小等等方面的查询. 这些是全部 Oracle 开发人员都必备的技 ...

  8. oracle查询语句大全 oracle 基本命令大全

    oracle查询语句大全 oracle 基本命令大全 来源于:http://download.csdn.net/download/jia584643753/5875619 1.create user ...

  9. 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询。这些是所有 Oracle 开发者都必备的技能,所以快快收藏吧!

    日期/时间 相关查询 获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 “SYSDATE”来指定查询的日期. SELECT TRUNC (SYSDATE, 'MO ...

  10. Oracle查询语句导致CPU使用率过高问题处理

    解决此问题的关键在于如何找到造成CPU使用率过高的SQL语句.步骤如下: 1.使用Process Explorer工具查看到Oracle进程,双击Oracle进程,在弹出的属性窗口的Threads选项 ...

随机推荐

  1. php strtotime函数服务器和本地不相同

    遇到过一种情况strtotime 在本地和服务器不相同 服务器返回的是-1 strtotime($sa_sagyo_ymd."23:59:59") 如果这样用不了,就只能换一种写法 ...

  2. C# DbHelperSQLP,操作不同的数据库帮助类 (转载)

    本类主要是用来访问不同数据库而编写的主要功能如下 .数据访问基础类(基于不同数据库),主要是用来访问不同数据库的. .得到最大值:是否存在:是否存在: . 执行SQL和Orace语句,返回影响的记录数 ...

  3. C#DbHelperOra,Oracle数据库帮助类 (转载)

    主要功能如下数据访问抽象基础类 主要是访问Oracle数据库主要实现如下功能 .数据访问基础类(基于Oracle),主要是用来访问Oracle数据库的. .得到最大值:是否存在:是否存在(基于Orac ...

  4. 利用反射把查询到的Table、Reader转换成List、Model

    菜鸟一枚,入园已有两年三个月,这还是第一次写博客,请各位大神斧正. 这是我写的一个工具类,通常我们从数据库查询到一个  DataReader  或者是  一个 Table , 想要转换成 一个 lis ...

  5. SQL语句like子句中的转义符 [转载]

    如果想在SQL LIKE里查询有下划线'_'或是'%'等值的记录,直接写成like 'XXX_XX',则会把'_'当成是like的通配符.SQL里提供了 escape子句来处理这种情况,escape可 ...

  6. vs2013 使用vs调试器,发现调试器显示的数据错误。查看内存,发现内存是正确的。

    有可能只是调试器的问题,程序可以正常运行的! 网上没找到此种情况解释.感觉有可能是那里堆被破坏了.

  7. MATLAB中的函数的归总

    字符串操作函数 1.        函数eval可以用来执行用字符串表示的表达式 2.        函数deblank可以去掉字符串末尾的所有空格 3.        函数findstr可以用来在长 ...

  8. boost::thread 线程锁

    1.boost锁的概述: boost库中提供了mutex类与lock类,通过组合可以轻易的构建读写锁与互斥锁. 2.mutex对象类(主要有两种): 1.boost::mutex(独占互斥类) --& ...

  9. 【清橙A1094】【牛顿迭代法】牛顿迭代法求方程的根

    问题描述 给定三次函数f(x)=ax3+bx2+cx+d的4个系数a,b,c,d,以及一个数z,请用牛顿迭代法求出函数f(x)=0在z附近的根,并给出迭代所需要次数. 牛顿迭代法的原理如下(参考下图) ...

  10. php文件缓存

    1.最新代码 <?php class cache { private static $_instance = null; protected $_options = array( 'cache_ ...