精通oracle sql 第二版 笔记 第一章

总结:

1 逻辑比较3结果:true,false,未知;包含null的比较,结果为未知;比较条件为空值时,作为false对待。

2 group by:rollup用于产生部分求和;cube求得交换分类值。

3 标量子查询:在结果集中的每一行结果产生时都执行一遍;可通过减少标量子查询的重复执行来优化sql。每个标量子查询都课用left join来代替。select  a.name,(select b.salary from work b where  a.id=b.person_id )from  person a;等同于select a.name,b.salary from  person a, work b where a.id=b.person_id

4 order by 开销较大  需要排序的数据量为每行输出字节数*行数,较小的数据量排序在内存中完成,较大的排序在临时磁盘空间中完成。

5 merge:把多个操作结合在一起,从而避免使用多个insert/update/delete语句,尽量避免做不是必须做的事情。

MERGE INTO PHYSICAL_EXAM_RECORD per  USING  BI_PERSON_INFO bpi ON ( per.idcard = bpi.idcard )WHEN MATCHED THEN UPDATE  SET per.VERIFY_ORGAN_CODE = bpi.INPUT_ORGAN_CODE, per.VERIFY_SUPER_ORGAN_CODE = bpi.INPUT_CENTER_ORGAN_CODE,  per.VERIFY_GBCODE = bpi.INPUT_GBCODE ;

 

1  

建表

   create table a_temp_try

(

ID  NUMBER(7,0 )not null ,

name varchar2(30 char),

gender number(1,0) default 1,

age number(3,0),

description varchar2(100 char),

create_date date

);

create table a_temp_try_copy as select * from a_temp_try;

2

单表插入数据:

单行:INSERT INTO  a_temp_try values (1,'huahua',2,12,'ceshi1',TO_DATE('2019/06/01','yyyy/MM/dd'));

多行:INSERT INTO  a_temp_try_copy (ID,name,gender,age,description,create_date) select * from   a_temp_try;

INSERT INTO  a_temp_try_copy  select * from   a_temp_try;

多表插入数据:

insert all

when sum_orders< 10000 then

into small_customers

when sum_orders< 100000 and sum_orders> 10000  then

into medium_customers

Else  

into large_customers

select customer_id, sum(order_total )sum_orders from  orders group by customer_id  order by sum_orders

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于oracle技术人员而言,怎么强调掌握pl/sql的重要性都不过分。但是,真正精通pl/sql绝非易事。事实上,在现有的oracle应用程序中充斥着太多质量不佳的pl/sql代码,它们要么没有充分利用oracle特有的功能,要么是在误用或者滥用。这种现象导致了许多对pl/sql本身能力不公正的批评。.    本书由全球oracle技术专家组织oaktable network的多位大师联手编写,是为pl/sql正名的名著。与市面上许多pl/sql图书只是纸上谈兵、局限于语法和功能本身不同,本书从实战出发,讲述如何正确、充分地运用语言特性,除了pl/sql的基本功能之外,也包括数据的高效处理、安全、触发器、高效的调试技术等。作者在讲解每一个特性 时都辅以经过实战检验的示例,更与读者分享了大量多年积累的独家经验。有本书在手,你将学会如何充分发挥pl/sql的巨大潜能,编写出可靠、高效且易于 维护的一流程序。... 作译者   Connor McDonald 世界著名的Oracle技术专家,Oracle认证专家,具有十多年的Oracle系统开发经验,以精深的PL/SQL造诣享誉业界。他的个人网站www.oracledba.co.uk是极具影响的Oracle技术资源。.   Chaim Katz Oracle认证专家,擅长数据库管理和PL/SQL开发,为各种Oracle技术期刊写过大量文章。   Christopher Beck Oracle公司资深技术专家,专攻核心数据库技术和Web应用开发。除本书外,他还与Joel R. Kallman和Tom Kyte等人合著了畅销书Beginning Oracle Programming。..   Joel R. Kallman Oracle公司软件开发总监.   David C. Knox 世界著名的Oracle安全专家,Oracle公司SolutioncEngineering集团的高级总监....

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值