易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle Sql技巧 Upsert, Multitable Insert, Undrop

UpSert功能:
MERGE <hint> INTO <table_name>
USING <table_view_or_query>
ON (<condition>)
WHEN MATCHED THEN <update_clause>
WHEN NOT MATCHED THEN <insert_clause>;
MultiTable Inserts功能:
Multitable inserts allow a single INSERT INTO .. SELECT statement to conditionally, or non-conditionally, insert into multiple tables. This
statement reduces table scans and PL/SQL code necessary for performing multiple conditional inserts compared to previous versions. It's
main use is for the ETL process in data warehouses where it can be parallelized and/or convert non-relational data into a relational format:
-- Unconditional insert into ALL tables
INSERT ALL
INTO sal_history VALUES(empid,hiredate,sal)
INTO mgr_history VALUES(empid,mgr,sysdate)
SELECT employee_id EMPID, hire_date HIREDATE, salary SAL, manager_id MGR
from employees WHERE employee_id > 200;
-- Pivoting insert to split non-relational data
INSERT ALL
INTO Sales_info VALUES (employee_id,week_id,sales_MON)
INTO Sales_info VALUES (employee_id,week_id,sales_TUE)
INTO Sales_info VALUES (employee_id,week_id,sales_WED)
INTO Sales_info VALUES (employee_id,week_id,sales_THUR)
INTO Sales_info VALUES (employee_id,week_id, sales_FRI)
SELECT EMPLOYEE_ID, week_id, sales_MON, sales_TUE,
sales_WED, sales_THUR,sales_FRI
from Sales_source_data;
-- Conditionally insert into ALL tables
INSERT ALL
WHEN SAL>10000 THEN
INTO sal_history VALUES(EMPID,HIREDATE,SAL)
WHEN MGR>200 THEN
INTO mgr_history VALUES(EMPID,MGR,SYSDATE)
SELECT employee_id EMPID, hire_date HIREDATE, salary SAL, manager_id MGR
from employees WHERE employee_id > 200;
-- Insert into the FIRST table with a matching condition
INSERT FIRST
WHEN SAL > 25000THEN
INTO special_sal VALUES(DEPTID,SAL)
WHEN HIREDATE like ('%00%') THEN
INTO hiredate_history_00 VALUES(DEPTID,HIREDATE)
WHEN HIREDATE like ('%99%') THEN
INTO hiredate_history_99 VALUES(DEPTID,HIREDATE)
ELSE
INTO hiredate_hi


相关文档:

oracle 表空间操作详解

  1
  2
  3
作者:   来源:    更新日期:2006-01-04 
  5
  6
 
  7
建立表空间
  8
  9
CREATE TABLESPACE data01
 10
DATAFILE '/oracle/oradata/d ......

Oracle取前N位SQL

      也许对SQL Server来说,取前N位的数据是很简单的事情,一条TOP语句就搞定了.
      在Oracle中我们往往会感觉到头疼,平日里也常会用到,主要是使用partition by.
语法如下:
select emp_card_no,work_date,read_card_date,count(rownum) as cnt
from hra_read_car ......

sql面试题目

Sql常用语法下列语句部分是Mssql语句,不可以在access中使用。
 
SQL分类:
DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)
DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句:
1、说明:创建数据库
CREATE ......

SQL 知识

--------------------------------查询系统库中是否有库(有库就删除此库)----------------------------------------------------
use master
if exists(select * from databases where name='库名')
drop database 库名
__________________________  建数据库建表的基本格式  __________________ ......

Oracle SQL的优化


SQL的优化应该从
5
个方面进行调整:
1.去掉不必要的大型表的全表扫描
2.缓存小型表的全表扫描
3.检验优化索引的使用
4.检验优化的连接技术
5.尽可能减少执行计划的
Cost
SQL语句:
是对数据库(
数据
)
进行操作的惟一途径;
消耗了70%~90%
的数据库资源;独立于程序设计逻辑,相对于对程序源代码的优化, ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号