【Oracle11g SQL详解】 SELECT 语句的基础用法与示例
SELECT 语句的基础用法与示例
在 Oracle 11g 中,SELECT 语句是最常用的 SQL 语句,用于从数据库表中查询数据。本文将从语法结构、使用方法和常见示例出发,系统讲解 SELECT 语句的基础用法。
一、SELECT 语句的基本语法
SELECT 列名1, 列名2, ...
FROM 表名
WHERE 条件
ORDER BY 列名 [ASC|DESC];
说明:
SELECT
:指定要查询的列,可用*
表示查询所有列。FROM
:指定数据来源的表名。WHERE
(可选):用于添加筛选条件,过滤满足特定条件的数据。ORDER BY
(可选):对查询结果进行排序,默认升序(ASC),可指定降序(DESC)。
二、SELECT 的基础查询
- 查询表中的所有数据
SELECT * FROM employees;
说明: 该语句会返回 employees
表中的所有列和所有行。
- 查询指定列
SELECT employee_id, first_name, last_name FROM employees;
说明: 仅查询指定的 employee_id
、first_name
和 last_name
三列。
三、使用别名(Alias)优化列名显示
- 给列设置别名
SELECT employee_id AS "员工编号", first_name || ' ' || last_name AS "员工姓名"
FROM employees;
说明:
AS
为列指定别名,提升结果的可读性。- 使用
||
拼接字符串,将first_name
和last_name
合并为一个字段。
结果示例:
员工编号 | 员工姓名 |
---|---|
101 | John Smith |
102 | Jane Doe |
四、添加筛选条件
- 查询满足特定条件的数据
SELECT * FROM employees
WHERE department_id = 10;
说明: 仅返回部门编号为 10
的员工数据。
- 使用逻辑操作符
SELECT first_name, last_name FROM employees
WHERE department_id = 10 AND salary > 5000;
说明: 同时满足 department_id = 10
和 salary > 5000
的员工会被返回。
- 模糊查询(LIKE 操作符)
SELECT first_name FROM employees
WHERE first_name LIKE 'A%';
说明: 返回 first_name
以字母 A
开头的所有员工。
%
:匹配任意长度的字符。_
:匹配单个字符。
五、排序查询结果
- 按单列排序
SELECT first_name, salary FROM employees
ORDER BY salary DESC;
说明: 按照 salary
列从高到低排序。
- 按多列排序
SELECT first_name, department_id, salary FROM employees
ORDER BY department_id ASC, salary DESC;
说明: 先按 department_id
升序排序,再按 salary
降序排序。
六、练习示例
- 查询所有部门名称,按照名称字母顺序排列
SELECT department_name FROM departments
ORDER BY department_name;
- 查询员工编号、姓名和薪资,筛选出薪资大于 6000 的员工,并按照薪资从高到低排序
SELECT employee_id, first_name || ' ' || last_name AS "员工姓名", salary
FROM employees
WHERE salary > 6000
ORDER BY salary DESC;
七、注意事项
-
大小写敏感性
Oracle 对于表名和列名不区分大小写,但字符串内容区分大小写。例如:WHERE first_name = 'John'
和WHERE first_name = 'john'
是不同的。 -
NULL 值处理
查询结果中如果包含 NULL 值,可以使用IS NULL
或IS NOT NULL
进行筛选。例如:
SELECT first_name FROM employees
WHERE commission_pct IS NULL;
通过本文的讲解,相信你已经掌握了 SELECT 语句的基础用法。熟练使用 SELECT 是操作 Oracle 数据库的第一步,后续我们将逐步深入学习其他高级用法。
原文地址:https://blog.csdn.net/weixin_39372311/article/details/144049175
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!