oracle基本语句格式

上传人:今*** 文档编号:106190455 上传时间:2019-10-14 格式:DOC 页数:13 大小:138.50KB
返回 下载 相关 举报
oracle基本语句格式_第1页
第1页 / 共13页
oracle基本语句格式_第2页
第2页 / 共13页
oracle基本语句格式_第3页
第3页 / 共13页
oracle基本语句格式_第4页
第4页 / 共13页
oracle基本语句格式_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《oracle基本语句格式》由会员分享,可在线阅读,更多相关《oracle基本语句格式(13页珍藏版)》请在金锄头文库上搜索。

1、数据定义语言q 数据定义语言用于改变数据库结构,包括创建、更改和删除数据库对象q 用于操纵表结构的数据定义语言命令有:q CREATE TABLEq ALTER TABLEq TRUNCATE TABLEq DROP TABLE数据操纵语言q 数据操纵语言用于检索、插入和修改数据q 数据操纵语言是最常见的SQL命令q 数据操纵语言命令包括:q SELECTq INSERTq UPDATEq DELETEDML SELECT 命令 q 利用现有的表创建表q 语法: CREATE TABLE AS SELECT column_names FROM ;SQL CREATE TABLE newstud

2、ent AS SELECT * FROM student;SQL CREATE TABLE newstudent1 AS SELECT sno, sname FROM student;SQL CREATE TABLE newstudent2 AS SELECT * FROM student WHERE 1 = 2;q 选择无重复的行q 在SELECT子句,使用DISTINCT关键字SQL SELECT DISTINCT sname FROM student;q 使用列别名q 为列表达式提供不同的名称q 该别名指定了列标题SQL SELECT sno 学号, 2010-extract(year

3、from birthday) “年 龄” -中间有空格,用“” FROM student;DML INSERT 命令q 插入日期类型的值q 日期数据类型的默认格式为“DD-MON-RR”q 使用日期的默认格式q 使用TO_DATE函数转换q 插入来自其它表中的记录q 语法: INSERT INTO (cloumn_list) SELECT column_names FROM ;SQL INSERT INTO student2 SELECT * FROM student; 数据控制语言q 数据控制语言为用户提供权限控制命令 q 用于权限控制的命令有:q GRANT 授予权限q REVOKE 撤销

4、已授予的权限算术操作符q 算术操作符用于执行数值计算q 可以在SQL语句中使用算术表达式,算术表达式由数值数据类型的列名、数值常量和连接它们的算术操作符组成q 算术操作符包括加(+)、减(-)、乘(*)、除(/)q 比较操作符用于比较两个表达式的值q 比较操作符包括 =、!=、=、BETWEENAND、IN、LIKE 和 IS NULL等,LIKE可以使用匹配符_、%逻辑操作符q 逻辑操作符用于组合多个计较运算的结果以生成一个或真或假的结果。q 逻辑操作符包括与(AND)、或(OR)和非(NOT)显示 2005-5月-10 至 2005-5月-26的订单信息SQL SELECT * FROM

5、order_master WHERE odate 10-5月-05 AND del_date SELECT (venname| 的地址是 |venadd1| |venadd2 | |venadd3) address FROM vendor_master WHERE vencode=V001SQL 操作符的优先级从高到低的顺序是:q 算术操作符 -最高优先级q 连接操作符q 比较操作符q NOT 逻辑操作符q AND 逻辑操作符q OR 逻辑操作符 -最低优先级 SQL 函数单行函数分析函数分组函数q 单行函数对于从表中查询的每一行只返回一个值q 可以出现在 SELECT 子句中和 WHERE

6、子句中 q 单行函数可以大致划分为:q 字符函数q 日期时间函数q 数字函数q 转换函数q 混合函数q 以下是一些其它的字符函数:q CHR和ASCIIq LPAD和RPADq TRIMq LENGTHq DECODE(在2.2视频中讲解)SQL SELECT LENGTH(frances) FROM dual;SQL SELECT TRIM(9 from 9999876789999) FROM dual;日期时间函数q 日期函数对日期值进行运算,并生成日期数据类型或数值类型的结果q 日期函数包括:q ADD_MONTHSq MONTHS_BETWEENq LAST_DAYq ROUNDq N

7、EXT_DAYq TRUNCq EXTRACT转换函数q 转换函数将值从一种数据类型转换为另一种数据类型q 常用的转换函数有:q TO_CHARq TO_DATEq TO_NUMBERSELECT TO_DATE(2005-12-06 , yyyy-mm-dd)FROM dual;SELECT TO_CHAR(sysdate,YYYY年fmMM月fmDD日 HH24:MI:SS)FROM dual;SELECT TO_NUMBER(100) FROM dual;混合函数q 以下是几个用来转换空值的函数:q NVL,第一为空返回二;否则返回一。q NVL2,第一个不空则返回二;否则返回三。q N

8、ULLIF,两个表达式,相等则返回空;否则第一个。分组函数q 分组函数基于一组行来返回结果q 为每一组行返回一个值AVGMINMAXSUMCOUNTSELECT COUNT(DISTINCT qty_hand) FROM itemfile;SELECT COUNT(*) FROM itemfileSELECT AVG(re_level) FROM itemfile WHERE p_category=accessories;SELECT COUNT(itemrate) FROM itemfile; SELECT MAX(max_level) FROM itemfile;SELECT SUM(it

9、emrate*max_level) FROM itemfile;q GROUP BY子句q 用于将信息划分为更小的组q 每一组行返回针对该组的单个结果q HAVING子句q 用于指定 GROUP BY 子句检索行的条件思考: 查出 平均成绩 大于 所有学生的 平均成绩 的 学生的 学号 和 平均成绩 查出 平均成绩 大于 60 的 学生的 学号 和 平均成绩,并按照学号的降序排列 SQL select sno, max(score) as 最高分, sum(score) as 总分 from 成绩 group by sno;Oracle 的多表查询 q 等值连接q 外连接q 自连接q 子查询相

10、等连接(第一种写法): select table1.column,table2.column from table1, table2 where table1.column1=table2.column2 可以使用表的别名,为了书写的简化。相等连接(第二种写法): select table1.column,table2.column from table1 inner join table2 on table1.column1=table2.column2 可以使用表的别名,为了书写的简化。 左外连接(第一种写法): select table1.column,table2.column fro

11、m table1 left outer join table2 on table1.column1=table2.column2 可以使用表的别名,为了书写的简化。左外连接(第二种写法): select table1.column,table2.column from table1, table2 where table1.column1=table2.column2(+) 可以使用表的别名,为了书写的简化。 集合操作符q 集合操作符将两个查询的结果组合成一个结果UNIONUNION ALLINTERSECTMINUSMINUS 操作符返回从第一个查询结果中排除第二个查询中出现的行。SQL S

12、ELECT orderno FROM order_master MINUS SELECT orderno FROM order_detail;INTERSECT 操作符只返回两个查询的公共行。SQL SELECT orderno FROM order_master INTERSECT SELECT orderno FROM order_detail重命名表:rename table_name1 to table_name2;重命名列:alter table table_name rename column col_oldname to colnewname ;常见的select、from、wh

13、ere的顺序:1, from 2, where 3, select完整的select、from、where、group by、having、order by的顺序:1, from 2, where 3, group by 4,having 5, select 6, order byEXISTS用来判断查询所得的结果中,是否有满足条件的纪录存在。例:select *from student where exists(select * from address where zz=郑州); 从select 、from、where三者的先后执行顺序来分析。子查询的使用 create table student(sno number(6) ,birthday date, sname varchar2(10);insert into student values(1, 11-1月-81 , 张三);insert into student values(2, 10-3月-82 , 李四);insert into student values(3, 06-1月-83

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号