oracle基础教程4 数据利器——SQL
oracle 一些运算函数的基本用法本章通过实例的方法引导读者快速掌握 SQL 的使用,从而能够利用【SQL Plus Worksheet】等工具,使用标准 SQL 语言完成对数据库数据的日常管理工作。 ### Oracle基础教程4 数据利器——SQL #### 4.1 SQL概述 ##### 4.1.1 SQL是什么 SQL(Structured Query Language,结构化查询语言)是关系型数据库中的核心语言,其地位相当于英语在全球的地位。它作为一种通用的语言,允许用户在不同的数据库系统上执行几乎相同的操作指令。例如,“SELECT * FROM 表名”这条语句可以在多种关系型数据库管理系统中使用,如Oracle 9i、SQL Server 2000、FoxPro等。 SQL语言根据功能大致可以分为以下四类: - **数据查询语言 (DQL)**:用于查询数据。 - **数据定义语言 (DDL)**:用于创建、删除和修改数据对象,如数据库、表、索引等。 - **数据操纵语言 (DML)**:用于完成数据的插入、更新和删除操作。 - **数据控制语言 (DCL)**:用于控制对数据库的访问权限,如授予或撤销用户的权限。 ##### 4.1.2 SQL的主要特点 SQL语言的设计简单直观,易于学习和使用。它的风格统一,只需要几个基本的英语单词就能实现复杂的功能。此外,SQL语句可以在多种开发环境中无缝集成,例如可以直接嵌入到像Visual Basic (VB) 或 PowerBuilder (PB) 这样的前端开发平台中,利用这些平台的计算能力结合SQL的强大数据处理能力,可以快速构建出高效的应用程序。 ##### 4.1.3 Oracle 9i使用SQL的工具 Oracle 9i提供了两种主要的工具来使用SQL语言: - **SQL Plus**:这是一个命令行工具,适用于经验丰富的用户或需要脚本化操作的场景。 - **SQL Plus Worksheet**:对于初学者来说更加友好,提供图形界面,便于操作和学习。 在本书中,我们将重点关注SQL Plus Worksheet的使用。 ##### 4.1.4 SQL中访问数据表的方法 在SQL语言中,访问特定的数据表通常是通过指定“用户名.数据表名”的格式来实现的。例如,如果想要查询scott用户的emp表中的所有数据,可以使用“SELECT * FROM scott.emp”。如果当前登录的用户本身就是scott,则可以简写成“SELECT * FROM emp”。 #### 4.2 用SQL进行单表查询 ##### 4.2.1 查询所有的记录 为了演示如何使用SQL进行单表查询,我们可以使用一个简单的示例。假设我们想要查询scott用户的emp表中的所有记录,可以使用如下命令:“SELECT * FROM scott.emp”。这条命令将会返回emp表中的所有记录。 **操作步骤**: 1. 启动SQL Plus Worksheet。 2. 在命令编辑区输入命令“SELECT * FROM scott.emp”。 3. 单击执行按钮。 执行上述步骤后,将可以看到emp表中的所有记录。 #### 4.3 多表查询 多表查询是指从多个数据表中同时查询数据。这种查询方式通常涉及使用JOIN关键字来连接不同表中的相关记录。例如,如果我们有两个表,一个是员工表(emp),另一个是部门表(dept),并且希望获取每个员工所在的部门信息,那么就需要使用JOIN来连接这两个表。 **操作步骤**: 1. 启动SQL Plus Worksheet。 2. 在命令编辑区输入命令,如“SELECT e.ename, d.dname FROM scott.emp e JOIN scott.dept d ON e.deptno = d.deptno”。 3. 单击执行按钮。 执行上述命令后,将返回包含员工姓名和所在部门名称的结果集。 #### 4.4 嵌套查询 嵌套查询是指在一个查询语句中包含另一个查询语句。这种方式常用于需要基于某些子查询结果来进一步筛选数据的场景。 **示例**:假设我们想要找到所有位于部门编号为20的部门中的员工,可以使用如下嵌套查询: ``` SELECT * FROM scott.emp WHERE deptno = (SELECT deptno FROM scott.dept WHERE dname = 'SALES'); ``` #### 4.5 最常用的查询函数 在SQL中,有一些常用的函数可以帮助我们更方便地处理数据。以下是一些常见的查询函数: - **COUNT()**:统计满足条件的行数。 - **SUM()**:计算数值列的总和。 - **AVG()**:计算数值列的平均值。 - **MAX()**:找出某列的最大值。 - **MIN()**:找出某列的最小值。 #### 4.6 使用SQL录入数据 使用SQL插入数据非常简单,可以通过INSERT语句来实现。例如,向emp表中添加一条新的员工记录: ``` INSERT INTO scott.emp (empno, ename, job, mgr, hiredate, sal, comm, deptno) VALUES (7876, 'ADAMS', 'CLERK', 7782, TO_DATE('1987-05-23', 'YYYY-MM-DD'), 1100, NULL, 20); ``` #### 4.7 使用SQL删除数据 删除数据同样简单,可以使用DELETE语句。例如,删除emp表中员工编号为7876的记录: ``` DELETE FROM scott.emp WHERE empno = 7876; ``` #### 4.8 使用SQL更新数据 更新数据是通过UPDATE语句来完成的。例如,将员工编号为7876的员工的薪水提高到1200: ``` UPDATE scott.emp SET sal = 1200 WHERE empno = 7876; ``` 通过以上章节的学习,读者应该能够掌握使用SQL Plus Worksheet等工具,利用标准SQL语言完成对数据库数据的日常管理工作。这包括了数据查询、数据录入、数据更新和数据删除等多个方面。熟练掌握这些技能对于有效地管理和维护数据库至关重要。
剩余30页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助