时间:2021-07-01 10:21:17 帮助过:4人阅读

字符和日期
示例:
SELECT last_name, job_id, department_id FROM employees WHERE last_name = ‘Whalen‘;

比较运算
| 操作符 | 含义 |
| = | 等于 |
| > | 大于 |
| >= | 大于等于 |
| < | 小于 |
| <= | 小于等于 |
| <> | 不等于(也可以是!=) |
赋值使用 := 符号
比较运算示例:
SELECT last_name, salary FROM employees WHERE salary <= 3000;

其它比较运算
| 操作符 | 含义 |
| BETWEEN...AND... | 在两个值之间 (包含边界) |
| IN(set) | 等于值列表中的一个 |
| LIKE | 模糊查询 |
| IS NULL | 空值 |
使用 BETWEEN 运算来显示在一个区间内的值
示例一:
SELECT last_name, salary FROM employees WHERE salary BETWEEN 2500 AND 3500;

使用 IN运算显示列表中的值
SELECT employee_id, last_name, salary, manager_id FROM employees WHERE manager_id IN ( 100, 101, 201 );

LIKE
示例:
SELECT first_name FROM employees WHERE first_name LIKE ‘S%‘;

‘%’和‘-’同时使用
示例:
SELECT last_name FROM employees WHERE last_name LIKE ‘_o%‘;

ESCAPE
示例:
SELECT job_id FROM jobs WHERE job_id LIKE ‘IT\_%‘ ESCAPE ‘\‘;

NULL
SELECT last_name, manager_id FROM employees WHERE manager_id IS NULL;

逻辑运算
| 操作符 | 含义 |
| AND | 逻辑并 |
| OR | 逻辑或 |
| NOT | 逻辑否 |
AND
示例:
SELECT employee_id, last_name, job_id, salary FROM employees WHERE salary >= 10000 AND job_id LIKE ‘%MAN%‘;

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‘ );
优先级
| 优先级 | 名称 |
| 1 | 算术运算符 |
| 2 | 连接符 |
| 3 | 比较符 |
| 4 | IS [NOT] NULL, LIKE, [NOT] IN |
| 5 | [NOT] BETWEEN |
| 6 | NOT |
| 7 | AND |
| 8 | OR |
ORDER BY子句
示例:
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;

Oracle系列三 过滤和排序
标签:示例 like desc weight between name table HERE ast