`
longgangbai
  • 浏览: 7339384 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle 10g SQL Fundamentals II(学习笔记二第5-6章)

 
阅读更多
第五章不同时区管理数据
				TIME_ZONE 会话参数值
						时间相对值:
							ALTER SESSION SET TIME_ZONE = '-05:00';
						数据库时间区:
							ALTER SESSION SET TIME_ZONE = dbtimezone;
						操作系统时间区:
							ALTER SESSION SET TIME_ZONE = local;
						区域命名:
							ALTER SESSION SET TIME_ZONE = 'America/New_York';

				CURRENT_DATE:
				        设置时间的格式:
				        ALTER SESSION SET NLS_DATE_FORMAT='DD-MON-YYYY HH24:MI:SS';
						设置时区
						ALTER SESSION SET TIMZE_ZONE='-5:00';
						
						SELECT SESSIONTIMEZONE,CURRENT_DATE FROM DUAL;
						
				
                CURRENT_TIMESTAMP:
						SELECT SESSIONTIMEZONE,CURRENT_TIMESTAMP FROM DUAL;
						
                LOCALTIMESTAMP:				
				        SELECT CURRENT_TIMESTAMP,LOCALTIMESTAMP FROMDUAL;
				
				DBTIMEZONE 
						SELECT DBTIMEZONE FROM DUAL;
				SESSIONTIMEZONE
						SELECT SESSIONTIMEZONE FROM DUAL;
						
				获取部分时间的值:
				   select extract(YEAR FROM SYSDATE) FROM DUAL;
				   
				   SELECT last_name, hire_date, 
						   EXTRACT (MONTH FROM HIRE_DATE)
					FROM employees
					WHERE manager_id = 100;

				TZ_OFFSET
				    select TZ_OFFSET('US/Eastern') from dual;
					select TZ_OFFSET('Europe/London') from dual;
					
				FROM_TZ
				    select FROM_TZ(TIMESTAMP '2000-03-28 08:00:00','3:00') from dual;
					select FROM_TZ(TIMESTAMP '2000-03-28 08:00:00','Australia/North') from dual;
					
				TO_TIMESTAMP
				     SELECT TO_TIMESTAMP ('2000-12-01 11:00:00','YYYY-MM-DD HH:MI:SS')   FROM DUAL;
				TO_TIMESTAMP_TZ 
					 SELECT TO_TIMESTAMP_TZ('1999-12-01 11:00:00 -8:00','YYYY-MM-DD HH:MI:SS TZH:TZM') FROM DUAL;

				
				SELECT hire_date, 
				   hire_date + TO_YMINTERVAL('01-02') AS
				   HIRE_DATE_YMININTERVAL	  
			   FROM   employees
			   WHERE department_id = 20; 
			   
			   
			   
			   
			   SELECT last_name, 
				 TO_CHAR(hire_date, 'mm-dd-yy:hh:mi:ss') hire_date, 
				  TO_CHAR(hire_date + 
				   TO_DSINTERVAL('100 10:00:00'),
					 'mm-dd-yy:hh:mi:ss') hiredate2
				FROM employees;




				第六章子查询
					SELECT	employee_id, manager_id, department_id
					FROM	employees
					WHERE  (manager_id, department_id) IN
										  (SELECT manager_id, department_id
										   FROM   employees
										   WHERE  employee_id IN (199,174))
					AND	employee_id NOT IN (199,174);

                   SELECT employee_id, last_name,
					   (CASE  WHEN department_id =
								 (SELECT department_id
								 FROM departments
					          WHERE location_id = 1800
					            )THEN 'Canada' 
						ELSE 'USA' END
					   ) location
				   FROM   employees;

					SELECT   employee_id, last_name
					FROM     employees e
					ORDER BY (SELECT department_name
							   FROM departments d
								WHERE e.department_id = d.department_id);

					 SELECT last_name, salary, department_id
						FROM   employees outer
						WHERE  salary >             (SELECT AVG(salary)
								  FROM   employees
								  WHERE  department_id =  
								  outer.department_id);

								  
					SELECT e.employee_id, last_name,e.job_id
					FROM   employees e 
					WHERE  2 <= (SELECT COUNT(*)
								 FROM   job_history 
								 WHERE  employee_id = e.employee_id);
								 
								 
					SELECT employee_id, last_name, job_id, department_id
					FROM   employees outer
					WHERE  EXISTS ( SELECT 'X'
									 FROM   employees
									 WHERE  manager_id = 
											outer.employee_id);
											
					SELECT department_id, department_name
					FROM departments d
					WHERE NOT EXISTS (SELECT 'X'
									  FROM   employees
									  WHERE  department_id 
											 = d.department_id);
											 
											 
											 
											 
					UPDATE table1 alias1
					SET    column = (SELECT expression
									 FROM   table2 alias2
									 WHERE  alias1.column =    
											alias2.column);
											
											
					DELETE FROM table1 alias1
					 WHERE  column operator 
						(SELECT expression
						 FROM   table2 alias2
						 WHERE  alias1.column = alias2.column);

					with的语句的使用:
					WITH dept_costs  AS (
					   SELECT d.department_name, SUM(e.salary) AS dept_total
					   FROM    employees e, departments d
					   WHERE   e.department_id = d.department_id
					   GROUP BY d.department_name),
					avg_cost    AS (
					   SELECT SUM(dept_total)/COUNT(*) AS dept_avg
					   FROM   dept_costs)
					SELECT * 
					FROM   dept_costs 
					WHERE  dept_total >
							(SELECT dept_avg 
							 FROM avg_cost)
					ORDER BY department_name;

 

分享到:
评论

相关推荐

    D17111GC11.Oracle.Database.10g.SQL.Fundamentals.II

    Oracle Database 10g SQL Fundamentals II是针对Oracle 10g数据库的高级SQL技术的学习资源。通过对上述知识点的深入理解和实践,可以极大地提升个人在Oracle数据库管理和开发方面的能力,为通过1z0-047 Oracle ...

    Oracle 11g SQL Fundamentals I

    ### Oracle 11g SQL Fundamentals I:详细解析 #### 一、课程概述 《Oracle 11g SQL Fundamentals I》是Oracle公司为初学者和有一定基础的数据库管理员提供的培训资料之一,主要目的是帮助学员掌握Oracle 11g版本中...

    Oracle Database SQL Fundamentals II.pdf

    Oracle Database SQL Fundamentals II的第二部分,意味着它是在基础教程的延续上更进一步地展开深入学习。 在这份教材中,涉及的知识点包括但不限于以下几个方面: 1. SQL语言基础:包括SQL的定义、功能、特点及其...

    Oracle Database 10g SQL Fundamentals I - Student Guide

    ### Oracle Database 10g SQL Fundamentals I - 学生指南 #### 一、概述 本学生指南旨在为学习者提供Oracle Database 10g SQL基础的全面介绍。Oracle Database 10g作为一款功能强大的关系型数据库管理系统,被广泛...

    Oracle Database 10g SQL Fundamentals I

    Oracle Database 10g SQL Fundamentals I 是一个深入学习Oracle数据库管理系统中SQL基础的课程,主要面向初学者和希望进一步掌握SQL语言的IT专业人士。在这个课程中,你会了解到如何使用SQL来管理和操作Oracle数据库...

    oracle 10g sql Fundamentals

    Oracle 10g SQL Fundamentals 是一套针对初学者和专业人士的教程,旨在深入理解Oracle数据库管理系统中的SQL(Structured Query Language)基础。这个版本是2.1,可能包含了更新的教学材料和改进的学习路径。 在...

    Oracle Database 11g - SQL Fundamentals I

    Oracle Database 11g SQL Fundamentals I 是一个深入学习Oracle数据库管理系统基础的教程,主要针对初学者和希望提升SQL技能的IT专业人士。Oracle 11g是Oracle公司的一个重要版本,提供了许多增强的功能和优化,使得...

    Oracle Database 11g SQL Fundamentals

    Oracle Database 11g SQL Fundamentals 是一套针对Oracle数据库系统SQL基础的官方教程,主要针对初学者和希望深入理解SQL语言的IT专业人士。这个教程详细介绍了如何在Oracle 11g环境中有效地使用SQL进行数据查询、...

    Oracle_Database_10g_SQL_Fundamentals_I.pdf

    Oracle 10g OCP官方课程列表: Oracle Database 10g: SQL Fundamentals Oracle Database 10g: Administration Workshop I Oracle Database 10g: Administration Workshop II

    Oracle Database 11g:SQL Fundamentals I1

    部分内容开头提到了这是 Oracle Database 11g: SQL Fundamentals I 的第二卷学生指南,版权信息和免责声明等法律条款,这些都确保了文档的正规性和合法性。此外,文档还列出了作者和技术贡献者名单,以及编辑、图形...

    Oracle Database 11g SQL Fundamentals 英文原版

    Oracle Database 11g SQL Fundamentals 是Oracle公司推出的一本针对初学者和数据库管理员的权威指南,旨在深入讲解SQL在Oracle 11g环境中的应用。这本书分为两个部分,全面覆盖了SQL的基础知识以及在Oracle数据库...

    oracle pl/sql fundamentals

    Oracle PL/SQL Fundamentals是Oracle University为学生设计的一份培训指南,旨在深入理解并掌握Oracle数据库中的PL/SQL编程基础。PL/SQL是Oracle数据库特有的结构化查询语言扩展,它结合了SQL的强大功能与过程性编程...

    oracle 10g sql Fundamentals.part01.rar

    oracle 10g sql Fundamentals.part01.rar

    oracle 11G sql fundamentals

    Oracle 11g SQL Fundamentals是学习Oracle数据库管理和开发的基础,尤其对于准备Oracle Certified Professional (OCP)考试的人员来说,这部分知识至关重要。SQL(Structured Query Language)是用于管理关系数据库的...

    [Oracle官方PPT讲义] Oracle DB 11g SQL Fundamentals I

    Oracle DB 11g SQL Fundamentals I 是一套官方提供的PPT讲义,旨在深入浅出地介绍Oracle数据库11g版本中的SQL基础概念和技术。在这一讲义中,你将全面学习到如何与Oracle数据库进行交互,理解SQL语言的基础结构,并...

    Oracle Database 11g SQL Fundamentals I Ed 2 _V1(CN)_Z0_051

    ### Oracle Database 11g: SQL ...通过完成**Oracle Database 11g: SQL Fundamentals I** 课程,学习者将能够熟练地使用SQL在Oracle 11g数据库中执行各种数据管理任务,并为进一步深入学习Oracle数据库打下坚实的基础。

    小布老师Oracle9i DBA Fundamentals II 视频教程学习笔记

    《小布老师Oracle9i DBA Fundamentals II 视频教程学习笔记》是针对Oracle数据库管理基础II课程的深入解析,由知名教育平台聚众培训视频网提供,旨在帮助学员掌握Oracle9i环境下数据库管理的核心技能。以下是该教程...

Global site tag (gtag.js) - Google Analytics