【Oracle11g SQL详解】 SELECT 语句的基础用法与示例

ops/2024/11/29 1:08:47/

SELECT 语句的基础用法与示例

在 Oracle 11g 中,SELECT 语句是最常用的 SQL 语句,用于从数据库表中查询数据。本文将从语法结构、使用方法和常见示例出发,系统讲解 SELECT 语句的基础用法。


一、SELECT 语句的基本语法
sql">SELECT 列名1, 列名2, ...
FROM 表名
WHERE 条件
ORDER BY 列名 [ASC|DESC];

说明:

  • SELECT:指定要查询的列,可用 * 表示查询所有列。
  • FROM:指定数据来源的表名。
  • WHERE(可选):用于添加筛选条件,过滤满足特定条件的数据。
  • ORDER BY(可选):对查询结果进行排序,默认升序(ASC),可指定降序(DESC)。

二、SELECT 的基础查询
  1. 查询表中的所有数据
sql">SELECT * FROM employees;

说明: 该语句会返回 employees 表中的所有列和所有行。

  1. 查询指定列
sql">SELECT employee_id, first_name, last_name FROM employees;

说明: 仅查询指定的 employee_idfirst_namelast_name 三列。


三、使用别名(Alias)优化列名显示
  1. 给列设置别名
sql">SELECT employee_id AS "员工编号", first_name || ' ' || last_name AS "员工姓名"
FROM employees;

说明:

  • AS 为列指定别名,提升结果的可读性。
  • 使用 || 拼接字符串,将 first_namelast_name 合并为一个字段。

结果示例:

员工编号员工姓名
101John Smith
102Jane Doe

四、添加筛选条件
  1. 查询满足特定条件的数据
sql">SELECT * FROM employees
WHERE department_id = 10;

说明: 仅返回部门编号为 10 的员工数据。

  1. 使用逻辑操作符
sql">SELECT first_name, last_name FROM employees
WHERE department_id = 10 AND salary > 5000;

说明: 同时满足 department_id = 10salary > 5000 的员工会被返回。

  1. 模糊查询(LIKE 操作符)
sql">SELECT first_name FROM employees
WHERE first_name LIKE 'A%';

说明: 返回 first_name 以字母 A 开头的所有员工。

  • %:匹配任意长度的字符。
  • _:匹配单个字符。

五、排序查询结果
  1. 按单列排序
sql">SELECT first_name, salary FROM employees
ORDER BY salary DESC;

说明: 按照 salary 列从高到低排序。

  1. 按多列排序
sql">SELECT first_name, department_id, salary FROM employees
ORDER BY department_id ASC, salary DESC;

说明: 先按 department_id 升序排序,再按 salary 降序排序。


六、练习示例
  1. 查询所有部门名称,按照名称字母顺序排列
sql">SELECT department_name FROM departments
ORDER BY department_name;
  1. 查询员工编号、姓名和薪资,筛选出薪资大于 6000 的员工,并按照薪资从高到低排序
sql">SELECT employee_id, first_name || ' ' || last_name AS "员工姓名", salary
FROM employees
WHERE salary > 6000
ORDER BY salary DESC;

七、注意事项
  1. 大小写敏感性
    Oracle 对于表名和列名不区分大小写,但字符串内容区分大小写。例如:WHERE first_name = 'John'WHERE first_name = 'john' 是不同的。

  2. NULL 值处理
    查询结果中如果包含 NULL 值,可以使用 IS NULLIS NOT NULL 进行筛选。例如:

sql">SELECT first_name FROM employees
WHERE commission_pct IS NULL;

通过本文的讲解,相信你已经掌握了 SELECT 语句的基础用法。熟练使用 SELECT 是操作 Oracle 数据库的第一步,后续我们将逐步深入学习其他高级用法。


http://www.ppmy.cn/ops/137523.html

相关文章

大数据机器学习算法与计算机视觉应用05:乘法权重算法

The Multiplicative Weight Algorithm The Experts ProblemWeighed Majority AlgorithmLower Bound for Deterministic AlgorithmsRandomized Weighed Majority Algorithm The Experts Problem 假设现在有 n n n位专家对 T T T天的做出预测 在第 t t t天,第 i i …

后台管理-动态路由配置以及用户权限管理(vue3+element plus+koa+Sequelize )

前言 之前开发了一个校园二手物品交易网站的demo 前端采用Vue2结合Element UI 后端采用了koa 、Sequelize 、Mysql 在工作了一年多之后,突然想针对工作所学来完善一下自己手里的项目 想要做一个针对于该平台或多个平台,来进行路由配置和角色集中管理…

算法篇:贪心算法

题目一:均分纸牌 有n堆纸牌,编号分别为 1,2,…,n1,2,…,n。每堆上有若干张,但纸牌总数必为nn的倍数。可以在任一堆上取若干张纸牌,然后移动。 移牌规则为:在编号为11的…

Kafka日志索引详解以及生产常见问题分析与总结

文章目录 一、Kafka的Log日志梳理1.1、Topic下的消息如何存储1.1.1、log文件追加记录所有消息1.1.2、index和timeindex加速读取log消息日志 1.2、文件清理机制1.2.1、如何判断哪些日志文件过期了1.2.2、过期的日志文件如何处理 1.3、Kafka的文件高效读写机制1.3.1、Kafka的文件…

CBK7运营安全

1 运营部门的角色 ​ prudent man、due care(按要求执行)VS due diligence(承担管理者责任) ​ 应尽关注:执行了负责任的动作降低了风险。 ​ 应尽职责:采取了所有必要的安全步骤以了解公司或个人的实际风…

2024年11月27日Github流行趋势

项目名称:screenshot-to-code 项目维护者:abi clean99 sweep-ai kachbit vagusX项目介绍:通过上传截图将其转换为整洁的代码(支持HTML/Tailwind/React/Vue)。项目star数:62,429项目fork数:7,614…

Spring Boot 的 WebClient 实践教程

什么是 WebClient? 在 Spring Boot 中,WebClient 是 Spring WebFlux 提供的一个非阻塞、响应式的 HTTP 客户端,用于与 RESTful 服务或其他 HTTP 服务交互。相比于传统的 RestTemplate,WebClient 更加现代化,具有异步和…

selinux和防火墙

一、selinux的说明 SELinux 是 Security-Enhanced Linux 的缩写,意思是安全强化的 linux 。 SELinux 主要由美国国家安全局( NSA )开发,当初开发的目的是为了避免资源的误用。 系统资源都是通过程序进行访问的,如果…