oracle SQL语法大全.ppt_第1页
oracle SQL语法大全.ppt_第2页
oracle SQL语法大全.ppt_第3页
oracle SQL语法大全.ppt_第4页
oracle SQL语法大全.ppt_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、关系数据库标准语言SQL / 1,SQL语言初步 数据查询语句 数据库更新语句 数据定义语句 数据控制语句,推荐的网赚方法和有信誉网站:,什麽是SQL?,SQL:Structured query language 功能:查询、操纵、定义、控制 特点:1、一体化; 2、两种使用方式,统一的语法结构; 方式一、联机交互使用方式; 方式二、嵌入式。 3、高度非过程化; 4、语言简洁,易学易用。,推荐的网赚方法和有信誉网站:,SQL支持关系数据库三级模式,基本表:独立存在的表。每个基表对应一个存储文件,一个表可带若干索引。 存储文件+索引=内模式 视图:是一个虚表。数据库中仅存视图定义,不存对应的数据

2、 。,推荐的网赚方法和有信誉网站:,SQL的三级模式,外模式,模式,内模式,Storefile1,Storefile2,Storefile3,Storefile4,Basetable1,Basetable2,Basetable3,Basetable4,View1,View2,SQL,用户,SQL命令的种类,DDL,数据定义语言 DML,数据操纵语言 DQL,数据查询语言 DCL,数据控制语言 数据管理命令 事务性控制命令,推荐的网赚方法和有信誉网站:,DDL,数据定义语言,用户创建或重新构建数据库的语言,CREATE INDEX ALTER INDEX DROP INDEX,CREATE TA

3、BLE ALTER TABLE DROP TABLE,推荐的网赚方法和有信誉网站:,DML,数据操纵语言,用于在关系数据库对象中操纵数据 INSERT UPDATE DELETE DQL,数据查询语言 对数据库中的信息寻找和定位 SELECT,推荐的网赚方法和有信誉网站:,DCL,数据控制语言,用于创建与用户访问相关的对象,也控制着用户的权限分配 ALTER PASSWORD改变口令 GRANT为用户授予特权 REVOKE从用户处收回特权,推荐的网赚方法和有信誉网站:,数据管理命令,审计和分析对数据库的操作,并可分析系统的执行过程 START AUDIT STOP AUDIT,推荐的网赚方法和

4、有信誉网站:,事务性控制命令,用户管理数据库的事务命令 COMMIT用于保护数据库的事务 ROLLBACK用于撤消数据库的事务 SAVEPOINT创建一组事务中的撤消点 SET TRANSACTION给事务命名,推荐的网赚方法和有信誉网站:,数据库中的表结构,数据库中的表 数据和基本数据类型,推荐的网赚方法和有信誉网站:,数据库中的表,表:字段、记录、列、主键,customer_tbl,Order_tbl,Products_tbl,Prod_idProd_desccost 112candy1.35 113plastic1.04,Products_tbl,记录,列(字段),主键,数据和基本数据类

5、型,数据是存储在数据库中的信息集合。数据类型用于给特定的数据提供规则。 基本数据类型包括: 字符串 数字 日期和时间值,推荐的网赚方法和有信誉网站:,字符串,定长字符串: CHARACTER(n) 变长字符串: CHARACTER VARYING(n),推荐的网赚方法和有信誉网站:,数字值,BIT(n) BIT VERYING(n) DECIMAL(n,n) INTEGER SMALLINT FLOAT(p) REAL(s) DOUBLE PRECISION(p),网盘赚钱网站大汇总:,日期和时间值,DATE(YEAR,MONTH,DAY) TIME(HOUR,MINUTE,SECOND) I

6、NTERVAL TIMESTAMP,NULL值:为空。,网盘赚钱网站大汇总:,数据查询语句,语法: SELECT * | all | column1,column2 FROM table1 ,table2 WHERE condition GROUP BY column1 ORDER BY column2(asc,desc) ,按列取值相等的原则进行分组,按列值进行排序,例1:SELECT * FROM products_tbl WHERE cost 5 例2:SELECT prod_desc,cost FROM products_tbl WHERE prod_id = 119 例3:多表查询

7、SELECT employee_tbl.emp_name, employee_pay_tbl.position FROM employee_tbl, employee_pay_tbl WHERE employee_tbl.emp_id = employee_pay_tbl.emp_id,网盘赚钱网站大汇总:,SQL中操作符的使用,定义:操作符是保留的字或字符,主要用于比 较和算术运算。 分类:比较操作符,逻辑操作符和算术运算符。 1、比较操作符 包括:=,, , =。 注意比较双方的数据类型。 2、算术运算符 包括:+,-,*,/等。 与数学运算规则一致。,2、逻辑操作符,IS NULL(是否

8、为空) BETWEEN(在某两个值之间) IN(一系列值中) LIKE(相似值的比较) EXITS(是否存在符合条件的数据) UNIQUE(是否唯一) ALL/ANY(一组数据的所有/其中的任何一个) AND/OR(逻辑与/或),网盘赚钱网站大汇总:,IS NULL / IS NOT NULL,WHERE salary IS NULL 工资为空值。 WHERE salary = NULL 工资中含有NULL字符。 例: SELECT emp_id, emp_name FROM employee_tbl WHERE emp_phone IS NULL,网盘赚钱网站大汇总:,BETWEEN,WHE

9、RE salary BETWEEN 200 and 300 工资在200到300之间,包括200和300。 IN WHERE salary IN (200,300,400) 工资必须是200,300,400之中的值。,网盘赚钱网站大汇总:,LIKE,使用匹配符将一个值同其相似的值比较。 匹配符包括:- 代表一个字符。 % 代表多个字符。 如: WHERE salary LIKE -00 查找00作为后两位数的值。 WHERE salary LIKE 200% 查找200作为前三位数的值。,网盘赚钱网站大汇总:,EXISTS,查询在指定表中是否存在一行符合某种条件的数据。 WHERE EXIST

10、S (SELECT employee_id FROM employee_tbl WHERE employee_id = 3333),网盘赚钱网站大汇总:,UNIQUE,在特定的表中搜索每一行是否唯一。 WHERE UNIQUE (SELECT salary FROM employee_tbl WHERE employee_id = 3333) 测试满足条件的工资是否有重复数据。,网盘赚钱网站大汇总:,ALL/ANY,与某个数据集中所有数据 / 任何一个进行比较。 WHERE salary all (SELECT salary FROM employee_tbl WHERE city = IND

11、IAN),AND/OR,AND连接的条件必须都满足。 OR连接的条件至少满足一个。 如:SELECT * FROM products_tbl WHERE cost 10 and cost 30 如:SELECT * FROM products_tbl WHERE prod_id = 7725 or prod_id = 2345,任务赚钱网站大收集(包含赚钱流程):,库函数,函数通常是列名或表达式相连系的命令。 1、统计函数 2、字符函数 3、算术函数,任务赚钱网站大收集(包含赚钱流程):,1、统计函数,统计函数:用于提供统计信息,如:累加、总和、平均值。 主要的统计函数: COUNT:统计行数

12、或不为NULL的列数。 SUM:求和。 MAX:求最大值。 MIN:求最小值。 AVG:求平均值。,任务赚钱网站大收集(包含赚钱流程):,COUNT,语法: COUNT(*)|(DISTINCT|ALL|COLUMN NAME) 注意:DISTINCT统计唯一的行; DISTINCT不能用于COUNT(*),只能用 于COUNT(column_name),任务赚钱网站大收集(包含赚钱流程):,举例:,SELECT COUNT(*) FROM EMPLOYEE_TBL统计雇员表中所有行数 SELECT COUNT(EMP_ID) FROM EMPLOYEE_TBL统计所有雇员身份证号 SELEC

13、T COUNT(DISTINCT SALARY) FROM EMPLOYEE_PAY_TBL统计唯一行数,任务赚钱网站大收集(包含赚钱流程):,SUM:仅用于数字类型。,语法: SUM( DISTINCT COLUMN NAME) 举例: SELECT SUM (SALARY) FROM EMPLOYEE_PAY_TBL计算工资总和 SELECT SUM (DISTINCT SALARY) FROM EMPLOYEE_PAY_TBL计算没有重复工资总和,AVG:确定一组数据的平均值,语法: AVG(DISTINCT COLUMN NAME) 举例: SELECT AVG(SALARY) FRO

14、M EMPLOYEE_PAY_TBL计算工资的平均值 SELECT AVG(DISTINCT SALARY) FROM EMPLOYEE_PAY_TBL计算唯一的工资平均值,任务赚钱网站大收集(包含赚钱流程):,MAX和MIN,语法: MAX( DISTINCT COLUMN NAME ) MIN ( DISTINCT COLUMN NAME ) 举例: SELECT MAX(SALARY) FROM EMPLOYEE_PAY_TBL计算最高的工资 SELECT MAX(DISTINCT SALARY) FROM EMPLOYEE_PAY_TBL计算最高的工资,任务赚钱网站大收集(包含赚钱流程

15、):,例:表DTUDENT_TBL,数学平均值 总成绩最高值 语文成绩最低值 数学成绩总和 表中的数据行数,任务赚钱网站大收集(包含赚钱流程):,1.SELECT AVG(maths) FROM STUDENT_TBL 2. SELECT MAX(total) FROM STUDENT_TBL 3. SELECT MIN(comp) FROM STUDENT_TBL 4. SELECT SUM(maths) FROM STUDENT_TBL 5. SELECT COUNT(*) FROM STUDENT_TBL,2、字符函数,UPPER(character string):将指定字符串中的小写

16、字母换成大写字母。 LOWER (character string): 将指定字符串中的大写字母换成小写字母。 SUBSTRING (colunm name,startposition,length) 从指定字符串中取字符。,任务赚钱网站大收集(包含赚钱流程):,例:,SELECT UPPER(CITY) FROM EMPLOYEE_TBL SELECT LOWER (CITY) FROM EMPLOYEE_TBL SELECT SUBSTRING(EMP_ID,1,3) FROM EMPLOYEE_TBL SELECT SUBSTRING(EMP_ID,5,3) FROM EMPLOYEE_

17、TBL,任务赚钱网站大收集(包含赚钱流程):,3、算术函数,ABS(绝对值)、SIN、COS、TAN、 EXP(指数)、SQRT(开方)、 POWER(幂) 语法:函数名(表达式) 例:SELECT SQRT(MATHS) * 10 FROM STUDENT_TBL,任务赚钱网站大收集(包含赚钱流程):,数据库更新语句,INSERT 给表填充数据 UPDATE 更新已存在的数据 DELETE 删除表中的数据,可以赚钱的调查网站大收集:,INSERT 给表填充数据,语法: INSERT INTO table_name VALUES(value1,value2,.) 例: products_tbl

18、:prod_id varchar(10) prod_desc varchar(25) cost number(6,2) 输入数据: INSERT INTO products_tbl VALUES(7725,LEATHER,26.99),可以赚钱的调查网站大收集:,UPDATE 更新已存在的数据,语法: UPDATE table_name SET column_name = value WHERE condition 例:UPDATE products_tbl SET prod_id = 1001 WHERE prod_desc = coat,可以赚钱的调查网站大收集:,DELETE 删除表中的

19、数据,语法: DELETE FROM table_name WHERE condition 例:DELETE FROM products_tbl WHERE prod_ID = 1001,可以赚钱的调查网站大收集:,SQL数据定义语句,数据定义功能包括:基表、视图和索引的定义。 一、创建与删除基表 二、创建与删除视图 三、索引的建立与删除,可以赚钱的调查网站大收集:,一、创建与删除基表,创建基表语法: CREATE TABLE table_name (col_name col_properties constraint ) table_name 表名 col_name 列名 创建临时表: CR

20、EATE TABLE # table_name (col_name col_properties constraint ),删除一张表就是删除一张表定义及其所有与之相关连的数据、索引、触发器、约束和许可。 语法: DROP TABLE databasename.table_name 例: DROP TABLE pubs.dbo.authors2,可以赚钱的调查网站大收集:,修改表结构语法: ALTER TABLE table_name modifycol_name col_properties addcol_name col_properties dropcol_name col_proper

21、ties 例:ALTER TABLE employee_tbl modify(emp_id varchar(10),可以赚钱的调查网站大收集:,例:创建一雇员表(编号/C,姓名/C,住所/C,电话/N)。,CREATE TABLE employee_tbl (emp_id char(9) not null, emp_name varchar(40) not null, emp_city varchar(15) not null, emp_phone number(10) null),可以赚钱的调查网站大收集:,二、视 图,视图的定义 视图的查询 视图的更新 删除视图,视图的定义,什么是视图?

22、视图是存储在数据库中的预先定义好的查询,具有表的外观,可以象表一样对其进行存取,但不占据物理存储空间。 视图的特点: 视图的存在依赖于生成视图的表; 视图能用作数据库安全的一种形式; 利用视图维护综合数据。,创建视图,基本语法: CREATE VIEW view_name AS SELECT STATEMENT WITH CHECK OPTION 1、从单独的表中创建视图 2、从多表中创建视图 3、从视图中创建视图,可以赚钱的调查网站大收集:,1、从单独的表中创建视图,语法: CREATE VIEW view_name AS SELECT * |COL1,COL2, FROM table_na

23、me WHERE expression 例: CREATE VIEW emp _ view AS SELECT emp_id,emp_name,phone FROM employee_tbl,2、从多表中创建视图,语法: CREATE VIEW VIEW_NAME AS SELECT * |COL1,COL2,. FROM TABLE_NAME1,TABLE_NAME2, WHERE EXPRESSION,可以赚钱的调查网站大收集:,例:,CREATE VIEW employee_summary AS SELECT e.emp_id,,p.position,p.pay_rate F

24、ROM employee_tbl e,employee_pay_tbl p WHERE e.emp_id = p.emp_id,3、从视图中创建视图,语法:CREATE VIEW2 AS SELECT * FROM VIEW1 注意:不要创建层次太深的视图; 例:由上例视图employee_summary CREAT subsummary AS SELECT * FROM employee_summary,可以赚钱的调查网站大收集:,视图的查询,对视图的查询与对基本表查询一样; 系统执行视图查询时是把它转换成等价的对基本表的查询。 例: SELECT emp_id, position FROM

25、 employee_summary WHERE pay_rate 15,可以赚钱的调查网站大收集:,视图的更新,对视图的更新最终要转换成对基本表的更新。 视图更新条件: 1、视图必须未涉及连接; 2、视图必须不包含GROUP BY子句; 3、视图不能包含任何组合函数; 4、不能使用DISTINCT子句; 5、WHERE子句不能包含表的嵌套引用。,例: UPDATE employee summary SET pay_rate = 18 WHERE emp_id = 52431875 转换成: UPDATE employee _pay_tbl SET pay_rate = 18 WHERE emp

26、_id = 52431875,删除视图,语法: DROP VIEW view_name 例:DROP VIEW employee summary 删除了视图,由此视图导出的其他视图也将自动被删除 若导出此视图的基本表被删除了,则此视图也将自动删除,可以赚钱的调查网站大收集:,视图的优点,视图对于数据库的重构造提供了一定程度的逻辑独立性。 简化了用户观点。 视图使不同的用户能以不同的方式看待同一数据。 视图对机密数据提供了自动的安全保护功能。,三、索引的建立与删除,语法: CREATE UNIQUE CLUSTER INDEX index_name ON table_name(clo_name 升/降序,.) ASC:升序,DESC:降序 UNIQUE 每一个索引只对应唯一的数据记录; CLUSTER 聚簇索引,是指索引项的顺序与表中记录的物理顺序一致的索引组织。,例:为学生-课程数据库中的student, cous

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论