zoukankan      html  css  js  c++  java
  • Java乔晓松oracle的条件查询和排序查询

    在查询中过滤行

    过滤

    使用WHERE 子句,将不满足条件的行过滤掉。

    SELECT *|{[DISTINCT] column|expression [alias],...}

    FROM    table

    [WHERE       condition(s)];

    WHERE 子句紧随 FROM 子句

    WHERE 子句

    SELECT employee_id, last_name, job_id, department_id

    FROM   employees

    WHERE  department_id = 90 ;

    字符和日期

    字符和日期要包含在单引号中。

    字符大小写敏感,日期格式敏感。

    默认的日期格式是 DD-MON-RR

    SELECT last_name, job_id, department_id

    FROM   employees

    WHERE  last_name = 'Whalen';

    比较运算

    SELECT last_name, salary

    FROM   employees

    WHERE  salary <= 3000;

    其它比较运算

    BETWEEN

    使用 BETWEEN 运算来显示在一个区间内的值

    SELECT last_name, salary

    FROM   employees

    WHERE  salary BETWEEN 2500 AND 3500;

    IN

    使用 IN运算显示列表中的值。

    SELECT employee_id, last_name, salary, manager_id

    FROM   employees

    WHERE  manager_id IN (100, 101, 201);

    LIKE

    使用 LIKE 运算选择类似的值

    选择条件可以包含字符或数字:

    % 代表零个或多个字符(任意个字符)

    _ 代表一个字符。

    SELECT first_name

    FROM    employees

    WHERE  first_name LIKE 'S%';

    ‘%’‘-’可以同时使用。

     

    SELECT last_name

    FROM   employees

    WHERE  last_name LIKE '_o%';

     

     

    可以使用 ESCAPE 标识符选择‘%’ ‘_’ 符号。

    ESCAPE

    回避特殊符号的:使用转义符。例如:将[%]转为[\%][_]转为[\_],然后再加上[ESCAPE ‘\’] 即可。

    SELECT job_id

    FROM   jobs

    WHERE  job_id LIKE ‘IT\_%‘ escape ‘\‘;

    NULL

    使用 IS (NOT) NULL 判断空值。

    SELECT last_name, manager_id

    FROM   employees

    WHERE  manager_id IS NULL;

    逻辑运算

    AND

    AND 要求并的关系为真。

    SELECT employee_id, last_name, job_id, salary

    FROM   employees

    WHERE  salary >=10000

    AND    job_id LIKE '%MAN%';

    OR

    OR 要求或关系为真。

    SELECT employee_id, last_name, job_id, salary

    FROM   employees

    WHERE  salary >= 10000

    OR     job_id LIKE '%MAN%';

    NOT

    SELECT last_name, job_id

    FROM   employees

    WHERE  job_id

           NOT IN ('IT_PROG', 'ST_CLERK', 'SA_REP');

    优先级

    可以使用括号改变优先级顺序

    ORDER BY子句

    使用 ORDER BY 子句排序

    ASCascend: 升序

    DESCdescend: 降序

    ORDER BY 子句在SELECT语句的结尾。

    SELECT   last_name, job_id, department_id, hire_date

    FROM     employees

    ORDER BY hire_date ;

    降序排序

    SELECT   last_name, job_id, department_id, hire_date

    FROM     employees

    ORDER BY hire_date DESC ;

    按别名排序

    SELECT employee_id, last_name, salary*12 annsal

    FROM   employees

    ORDER BY annsal;

    多个列排序

    按照ORDER BY 列表的顺序排序。

    SELECT last_name, department_id, salary

    FROM   employees

    ORDER BY department_id, salary DESC;

    可以使用不在SELECT 列表中的列排序。

    总结

    通过本课,您应该可以完成:

    使用WHERE 子句过滤数据

    使用比较运算

    使用 BETWEEN AND, IN, LIKE NULL运算

    使用逻辑运算符 AND, ORNOT

    使用 ORDER BY 子句进行排序。

    SELECT     *|{[DISTINCT] column|expression [alias],...}

    FROM       table

    [WHERE     condition(s)]

    [ORDER BY  {column, expr, alias} [ASC|DESC]];

     

  • 相关阅读:
    【强化学习】python 实现 q-learning 例二
    【强化学习】python 实现 q-learning 例一
    python棋类游戏编写入门
    推荐几个表格工具
    【Java并发编程实战】----- AQS(四):CLH同步队列
    【Java并发编程实战】----- AQS(三):阻塞、唤醒:LockSupport
    【Java并发编程实战】----- AQS(二):获取锁、释放锁
    【Java并发编程实战】----- AQS(一):简介
    【Java并发编程实战】-----“J.U.C”:CLH队列锁
    【Java并发编程实战】-----“J.U.C”:CAS操作
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3003108.html
Copyright © 2011-2022 走看看