1、查询和SQL函数,第二章,2,回顾-Oracle 入门2-1,DBMS 是一个相关数据的集合和一组用来访问数据的程序。 数据中可以识别的关系如下: 一对一 一对多 多对多 用于存储和检索数据库中数据的语言是 SQL,3,回顾-Oracle 入门2-2,Oracle 支持 Char、Varchar2、Number、Long、Date、Raw、Long Raw 和 Lob 以存储数据。 Create、Alter、Drop 和 Truncate 是用于定义数据的不同命令。 Insert、Update、Delete 和 SELECT 是用于操纵数据的不同命令。 Commit、Savepoint 和 R
2、ollback 是可用于控制事务的命令。 Grant 和 Revoke 是用于控制数据的两个命令。,4,本章目标,SELECT 语句的使用 SQL*Plus 中的运算符 SQL*Plus 函数 临时表,5,SELECT 语句 4-1,SELECT 可以用于: 创建现有表的副本 插入来自其他表的记录 使用别名让列显示其他名称,6,SELECT 语句 4-2,创建现有表的副本语法: Create table as SELECT column_names from ;,7,SELECT 语句 4-3,插入来自其他表的记录语法: Insert into (SELECT column_names fro
3、m );,8,SELECT 语句 4-4,为列显示不同名称语法: SELECT column_name from table_name;,9,SQL*Plus 中的运算符,运算符的分类 算术运算符 比较运算符 逻辑运算符 集合运算符 连接运算符,10,算术运算符,算术运算符 用于执行数学计算 不同的算术运算符 加 (+) 减 (-) 乘 (*) 除 (/),11,比较运算符,比较运算符 用于将一个表达式与另一个表达式进行比较 不同的比较运算符 =、!=、= IN LIKE IS NULL BETWEEN 和 NOT BETWEEN,12,逻辑运算符,逻辑运算符 用于合并两个条件的结果以产生单个
4、结果 不同的逻辑运算符 AND OR NOT,13,集合运算符,集合运算符 用于合并两个独立查询的结果 不同的集合运算符 Union Union all Intersect Minus,14,连接运算符,连接运算符 用于将两个或多个字符串合并在一起 符号 (|) 表示连接运算符,15,SQL*Plus 函数 11-1,SQL*Plus 函数 用于操纵数据 接受一个或多个参数并返回一个值 SQL*Plus 函数的类别 单行函数 分组函数,16,单行函数 对每一行返回一个值 也称为标量函数 在 SELECT 和 WHERE 子句中使用,SQL*Plus 函数 11-2,17,单行函数的分类 日期函
5、数 字符函数 数字函数 转换函数 其他函数 常规函数,SQL*Plus 函数 11-3,18,日期函数 Add_months Last_day Months_between Round Next_day Trunc Greatest,SQL*Plus 函数 11-4,19,字符函数 Substr Instr Length Lpad Rpad Trim Decode,SQL*Plus 函数 11-5,20,数字函数 Mod Round Trunc Sign Ln,SQL*Plus 函数 11-6,21,SQL*Plus 函数 11-7,转换函数 To_char( ) To_date( ) To_
6、number( ),22,SQL*Plus 函数 11-8,其他函数 Uid User Vsize,23,SQL*Plus 函数 11-9,常规函数 NVL NVL2 NULLIF COALESCE,24,SQL*Plus 函数 11-10,分组函数 基于一组行产生结果 对每组返回一个值,25,SQL*Plus 函数 11-11,不同的分组函数 Avg Max Min Sum Count Stddev variance,26,Group By 和 Having 子句,Group By 子句 用于将信息划分为较小的组 每一组行返回针对每组的单个结果行Having 字句 用于指定针对行的某些条件
7、它限定组中的行,27,ROLLUP 和 CUBE,ROLLUP 结果集包含分组行和小计行 ROLLUP (column_name1,column_name2) CUBE 产生交叉表格报表 CUBE (column_name1,column_name2, column_ name3),28,临时表,只在用户会话期间存在的表 数据在用户事务处理期间持续存在 使用 CREATE GLOBAL TEMPORARY TABLE 命令 不会自动获得空间 插入的值仅在此特定会话中可用,29,总结 2-1,SELECT 语句可以用于: 创建表的副本 插入来自其他表的记录 显示列别名 SQL*Plus提供不同类型的运算符 使用集合运算符可以合并查询 SQL*PLUS 函数划分为单行函数和分组函数,30,总结 2-2,转换函数用于转换数据类型 分组函数对每组返回一个值 Rollup 和 Cube 运算符用于查找表达式的聚集和超级聚集 在临时表中数据在用户事务处理期间持续存在,