{管理信息化ORACLE}Oracle9i培训胶片中文版12基本的DDL和DML介绍caith

上传人:卓****库 文档编号:140935452 上传时间:2020-08-02 格式:PPTX 页数:81 大小:848.61KB
返回 下载 相关 举报
{管理信息化ORACLE}Oracle9i培训胶片中文版12基本的DDL和DML介绍caith_第1页
第1页 / 共81页
{管理信息化ORACLE}Oracle9i培训胶片中文版12基本的DDL和DML介绍caith_第2页
第2页 / 共81页
{管理信息化ORACLE}Oracle9i培训胶片中文版12基本的DDL和DML介绍caith_第3页
第3页 / 共81页
{管理信息化ORACLE}Oracle9i培训胶片中文版12基本的DDL和DML介绍caith_第4页
第4页 / 共81页
{管理信息化ORACLE}Oracle9i培训胶片中文版12基本的DDL和DML介绍caith_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《{管理信息化ORACLE}Oracle9i培训胶片中文版12基本的DDL和DML介绍caith》由会员分享,可在线阅读,更多相关《{管理信息化ORACLE}Oracle9i培训胶片中文版12基本的DDL和DML介绍caith(81页珍藏版)》请在金锄头文库上搜索。

1、基本的DML和DDL介绍,1.0,目标,通过这部分课程的学习,您将了解以下内容 : Select 语句的功能 执行基本的Select语句 描述 DML 语句 在表中插入数据行 在表中修改数据行 从表中删除数据行 合并表中的数据行 控制事务处理,SELECT语句的功能,Selection,Projection,Table 1,Table 2,Table 1,Table 1,Join,基础SELECT 语句语法,SELECT*|DISTINCT column|expression alias,. FROMtable;,SELECT * FROM departments;,选择所有的列,选择指定的列

2、,SELECT department_id, location_id FROM departments;,如何写SQL语句,SQL 语句不区分大小写 关键字不能分行隔开 条件通常被分行放置 缩进被用来提高语句的可读性,算术表达式,通过使用算术操作符来表达数值型和日期型数据.,Operator + - * /,描述 加 Add 减 Subtract 乘 Multiply 除 Divide,使用算术操作符,SELECT last_name, salary, salary + 300 FROM employees;,算术操作符优先级,乘除的优先级高于加减. 相同优先级从左到右依次处理. 括号被要求优

3、先执行.,操作优先级,SELECT last_name, salary, 12*salary+100 FROM employees;,使用圆括号,SELECT last_name, salary, 12*(salary+100) FROM employees;,定义空值,空值是一种不可用、不被指派、未知、不确定的值 空值不同于零或一个空格,SELECT last_name, job_id, salary, commission_pct FROM employees;,SELECT last_name, 12*salary*commission_pct FROM employees;,在算术操作

4、中的空值,算术操作中如有空值,运算结果返回为空.,使用列的别名,SELECT last_name Name, salary*12 Annual Salary FROM employees;,SELECT last_name AS name, commission_pct comm FROM employees;,使用连接符,SELECTlast_name|job_id AS Employees FROM employees;,使用字符串,SELECT last_name| is a |job_id AS Employee Details FROM employees;,重复的行,查询结果缺省显

5、示所有的行,包括重复的行.,SELECT department_id FROM employees;,排除重复的行,SELECT DISTINCT department_id FROM employees;,使用SQL语句限制显示的行,“retrieve allemployeesin department 90”,EMPLOYEES,限制挑选出来的行,SELECT*|DISTINCT column|expression alias,. FROMtable WHEREcondition(s);,使用WHERE语句限制返回的行 WHERE语句应该写在FROM语句之后,使用 WHERE 条件,SEL

6、ECT employee_id, last_name, job_id, department_id FROM employees WHERE department_id = 90 ;,字符串和日期值,都使用单引号 字符串值区分大小写,日期值需注意格式,SELECT last_name, job_id, department_id FROM employees WHERE last_name = Whalen;,比较条件,操作符 = = ,含义 等于 大于 大于或等于 小于 小于或等于 不等于,SELECT last_name, salary FROM employees WHERE salar

7、y = 3000;,使用比较条件,其它的比较条件,操作符 BETWEEN.AND. IN(set) LIKE IS NULL,含义 两个值之间 匹配值列表中值 匹配一个字符样式 空值,使用 BETWEEN 条件,可以使用该条件显示某范围内的值.,SELECT last_name, salary FROM employees WHERE salary BETWEEN 2500 AND 3500;,Lower limit,Upper limit,SELECT employee_id, last_name, salary, manager_id FROM employees WHERE manage

8、r_id IN (100, 101, 201);,使用 IN 条件,满足成员列表中的条件.,使用 LIKE 条件,搜索条件能包括两种模式匹配类型: % 表示许多字符 _ 表示一个字符,SELECTfirst_name FROM employees WHEREfirst_name LIKE S%;,可混合两种模式匹配类型,使用 LIKE 条件,SELECT last_name FROM employees WHERE last_name LIKE _o%;,使用 NULL 条件,测验空值使用 IS NULL 条件.,SELECT last_name, manager_id FROM employ

9、ees WHERE manager_id IS NULL;,逻辑条件,Operator ANDOR NOT,含义 两部分条件都返回真值则结果返回真值 两部分条件中有任意一部分返回真值则结果返回真值 如果条件返回假则结果返回真值,使用 AND 操作符,要求条件都为真,SELECT employee_id, last_name, job_id, salary FROM employees WHERE salary =10000 AND job_id LIKE %MAN%;,使用 OR 操作符,SELECT employee_id, last_name, job_id, salary FROM em

10、ployees WHERE salary = 10000 OR job_id LIKE %MAN%;,满足任意一个条件即可返回真值,SELECT last_name, job_id FROM employees WHERE job_id NOT IN (IT_PROG, ST_CLERK, SA_REP);,使用 NOT 操作符,优先规则,使用括号可不遵照上述优先规则.,优先级别 操作符 1算术操作符 2连接操作符 3比较操作符 4IS NOT NULL, LIKE, NOT IN 5NOT BETWEEN 6NOT 逻辑条件 7AND逻辑条件 8OR 逻辑条件,SELECT last_nam

11、e, job_id, salary FROM employees WHERE job_id = SA_REP OR job_id = AD_PRES AND salary 15000;,优先规则,SELECT last_name, job_id, salary FROM employees WHERE (job_id = SA_REP OR job_id = AD_PRES) AND salary 15000;,优先规则,使用括号,SELECT last_name, job_id, department_id, hire_date FROM employees ORDER BY hire_da

12、te ;,ORDER BY 条件,带 ORDER BY 条件的排序 ASC: 升序,缺省 DESC: 降序 ORDER BY 条件在Select语句最后,降序排列,SELECT last_name, job_id, department_id, hire_date FROM employees ORDER BY hire_date DESC ;,使用列别名排序,SELECT employee_id, last_name, salary*12 annsal FROM employees ORDER BY annsal;,按ORDER BY 列表中的列名顺序依次排序.,SELECT last_na

13、me, department_id, salary FROM employees ORDER BY department_id, salary DESC;,多列排序,数据操作语句,一条 DML 语句在下列情况下被执行: 向表中增加新的数据行 修改表中存在的数据 从表中删除数据 一个事务由DML语句集合形成的逻辑工作单元构成.,向表中增加新的数据行,DEPARTMENTS,New row,insert a new row into the DEPARMENTS table,INSERT 语句语法,.,INSERT INTOtable (column , column.) VALUES(value

14、 , value.);,向表中插入新的数据行,插入的新行应包括所有的列值. 插入的值应按照表中列缺省的顺序排列. 如插入所有的列, INSERT 条件中可随意选择是否列出所有列.,INSERT INTO departments(department_id, department_name, manager_id, location_id) VALUES (70, Public Relations, 100, 1700); 1 row created.,INSERT INTOdepartments VALUES(100, Finance, NULL, NULL); 1 row created.,

15、INSERT INTOdepartments (department_id, department_name ) VALUES(30, Purchasing); 1 row created.,插入带空值的数据行,隐性的方法: 省略为空的列名.,显性的方法: 使用关键字NULL来指定为空的列.,INSERT INTO employees (employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id) VALUES (113, Louis, Popp, LPOPP, 515.124.4567, SYSDATE, AC_ACCOUNT, 6900, NULL, 205, 100); 1 row created.,插入特殊的值,SYSDATE 函数记录当前的日期和时间.,INSERT INTO employees VALUES (114, Den, Raphealy, DRAPHEAL, 515.127.4561, TO_DATE(FEB 3, 1999, MON DD, YYYY), AC_ACCOUNT, 11000, NULL, 100, 30); 1 row created.,插入

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

当前位置:首页 > 商业/管理/HR > 企业文档

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