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

oracle高级编程笔记

 
阅读更多

Oracle学习笔记

学习网站:http://school.itzcn.com/special-spid-35.html

1、更新语句:

update test 
set(max_price,proxy_price)=(select max_price,proxy_price from test where id=35668)
where id=35674;
commit;

 2、MERGE语句:可以方便地把多个操作结合成一个,可避免使用多个insert,update以及delete语句。



 eg.

create table person1(
pid number(4),
page number(3)
);
insert into person1 values(1,20);
insert into person1 values(2,21);
insert into person1 values(3,22);
commit;
create table person2(
pid number(4),
page number(3)
);
insert into person2 values(1,100);
insert into person2 values(4,100);
insert into person2 values(5,100);
select * from person1;
select * from person2;
merge into person1 p1
using person2 p2
on(p1.pid=p2.pid)
when matched then
  update set p1.page=p2.page
when not matched then
  insert(pid,page) values(p2.pid,p2.page);

--结果 3 行已合并。

 

3、


 

4、大对象

》LONG,LONG RAW数据类型:

LONG数据类型可以存储2GB以下的字符数据

LONG RAW数据类型可以存储2GB以下的二进制数据

RAW数据类型可以存储4KB的二进制数据。

 

》大对象四种类型:

CLOB 字符LOB类型,用于存储字符数据

NCLOB 国家语言字符集LOB类型,用于存储多字节字符数据,一般用于非英文字符

BLOB 二进制LOB类型,用于存储二进制数据

BFILE 二进制FILE类型,用于存储文件指针。

 

》LOB类型与较早类型相比优点:

1》LOB列最大可以存储128TB的数据,远远超过LONG和LONG RAW列存储的数据量2GB。

2》一个表可以有多个LOB列,但是一个表只能有一个LONG或LONG RAW 列。

3》LOG数据可以随机访问,LONG和LONG RAW数据只可以顺序访问。

CLOB:

create table clob_table(
id number primary key,
clob_column clob not null
);
--使用to_clob()
insert into clob_table(id,clob_column)
values(1,to_clob('这里是clob类型数据'));
select * from clob_table;

 

BLOB:

Bcreate table blob_table(
id number primary key,
blob_column blob not null
);
--to_blob()
insert into blob_table(id,blob_column)
values(1,to_blob('101010111110'));
commit;
select * from blob_table;

 

BFILE:


 

操作大对象APPEND()方法添加字符串,如,src_clob添加到dest_clob后面:


 

大对象COMPARE()比较,如果两个LOB相同则返回0;如果不相同则返回1或-1;如果参数值设置有误或不合理则返回空值。


 

大对象REASE(lob,amount,offset)方法用于删除一个LOB中的数据,删除方式是从指定的偏移量开始,删除指定数量的字符或字节。

 
 大对象FILEGETNAME(bfile,directory,filename)方法用于获取BFILE所指向的外部文件的目录和文件名。


 

大对象LOADCLOBFROMFILE()方法,用于将BFILE所指向的外部文件中的数据加载到CLOB/NCLOB中。加载方式是从指定的偏移量开始,加载指定数量的字节。


 

5、HAVING子句通常与GROUP BY子句一起使用,在完成对分组结果的统计后,可以使用HAVING子句对分组的结果进行进一步的筛选。一个HAVING子句最多可以包含40个表达式。

 

6、USING使用,如果在连接查询时使用了两个表中相同的多个列,那么就可以在USING子句中指定多个列名,形式如下:

select ... from  table1 inner join table2

using(column1,column2);

上述语句相当于下面的语句:

select ...  from table1 inner join table2

on table1.column1=table2.column2

and table1.column2=table2.column2;

 

7、Oracle分页sql示例:

SELECT *
FROM
  (SELECT t2.*,
    rownum rowno
  FROM
    (SELECT t1.*
    FROM
      (SELECT D.ID,
        D.USER_ID,
        D.USER_NAME,
        D.CREATED_AT,
        D.REMARKS
      FROM USER_TEST D
      WHERE 1  =1
      AND D.STATUS = '2'
      ORDER BY D.CREATED_AT DESC
      ) t1
    ) t2
  WHERE rownum <=25
  ) table_alias
WHERE table_alias.rowno >0; 

 MySQL分页SQL示例:

select * from table LIMIT 5,10;//返回6-15行

 SqlServer分页SQL示例:

select TOP 10 * from test order by id asc;

 

8、Oracle分组后,取每组第一条数据。

   row_number() over(partition by X)

--导出所有psam冻结的数据,只取第一条。(分组后取每组第一条数据)
select * 
from (select t.*,pb.*,row_number() over(partition by t.psamId order by t.psamId desc, t.blockingDate desc,t.blockingTime desc ) cn from PayTerminalBlockingTest  t join PayTerminalTest p on(t.psamId=p.psamId) join PayBranchTest pb on(p.branchId=pb.branchId) where  t.blockingFlag='1')  where cn = 1

 

  • 大小: 98.1 KB
  • 大小: 133.7 KB
  • 大小: 77.6 KB
  • 大小: 59.6 KB
  • 大小: 16 KB
  • 大小: 17.1 KB
  • 大小: 21.4 KB
  • 大小: 16.5 KB
  • 大小: 23.5 KB
  • 大小: 24.4 KB
分享到:
评论

相关推荐

    ORACLE 高级编程笔记

    从给定的Oracle高级编程笔记中,我们可以提炼出多个关键的知识点,这些知识点涵盖了Oracle数据库管理、用户权限、SQL操作以及脚本控制等核心领域。下面将详细展开这些知识点: ### Oracle用户管理与权限 #### 创建...

    精通 ORACLE SQL高级编程 学习笔记

    精通Oracle SQL【第2版】ORACLE SQL高级编程【第二版】学习笔记

    oracle plsql编程学习笔记

    ### Oracle PL/SQL编程核心知识点解析 #### 一、创建基本表与操作 在Oracle数据库中,使用PL/SQL进行数据库编程前,首先需掌握如何创建表与进行基本的CRUD(创建、读取、更新、删除)操作。示例中的`CREATE TABLE`...

    Oracel SQL高级编程笔记

    Oracle SQL高级编程笔记是针对数据库管理员、开发人员和数据分析师的重要参考资料,涵盖了SQL在Oracle数据库系统中的高级应用。这些笔记详尽地阐述了如何利用Oracle SQL进行高效的数据查询、操作和管理,旨在提升...

    李兴华Oracle全部笔记

    其次,笔记可能会深入到Oracle的高级特性,比如PL/SQL编程,这是一种专为Oracle设计的过程化编程语言,用于创建存储过程、函数、触发器等。此外,可能还会涵盖数据库事务处理、并发控制和锁机制,这些都是保证数据...

    Oracle学习笔记 PDF

    ### Oracle学习笔记知识点详解 #### 一、Oracle简介 Oracle是一家知名的软件公司,以其数据库管理系统闻名全球。该公司成立于1977年,总部位于美国加利福尼亚州。Oracle不仅提供数据库解决方案,还涉及中间件、...

    Oracle数据库课堂笔记

    以下是对Oracle数据库课堂笔记的详细解析,涵盖了从基础到进阶的重要知识点。 第一讲:Oracle简介 Oracle数据库是由甲骨文公司开发的,提供了一整套数据存储、管理和检索解决方案。它支持多种操作系统和硬件平台,...

    Oracle实用教程笔记

    单实例数据库是默认的安装类型,而RAC(Real Application Clusters)是Oracle高级数据库管理的特性之一。安装过程中可以选择数据库的语言,Oracle提供简体中文和英语两种界面语言。安装路径可以根据个人喜好设置,但...

    oracle_sql笔记

    这篇笔记主要涵盖了Oracle SQL的基础知识、高级特性和实际应用技巧。 一、基础SQL语法 Oracle SQL遵循标准的SQL语法,包括SELECT、INSERT、UPDATE、DELETE四大语句。用于查询数据的基本结构是SELECT字段列表FROM...

    oracle存储过程笔记

    存储过程的概念类似于高级编程语言中的模块,通过参数传递来实现数据的交互,体现了模块化设计的思想。本文将深入探讨Oracle存储过程的特点、语法结构、创建实例以及参数的使用。 首先,存储过程有以下几个显著特点...

    Oracle高级操作函数学习笔记

    以下是从标题、描述和部分内容中提取的Oracle高级操作函数的知识点。 ### 分支判断函数 #### DECODE函数 DECODE函数是Oracle中的一个条件分支函数,它的功能类似于编程语言中的if-else if-else语句。DECODE函数的...

    Oracle 超强学习笔记

    本"Oracle超强学习笔记"将带你深入探索Oracle的世界,掌握从基础到高级的各种技术,助你在数据库管理领域提升专业技能。 1. **Oracle简介** Oracle数据库是由美国甲骨文公司开发的关系数据库系统,其核心组件包括...

    oracle培训老师笔记

    对于高级特性,笔记可能涉及物化视图、物质化的子查询、流复制、数据库链接,以及Oracle的高可用性解决方案,如RAC(Real Application Clusters)和Data Guard。 Oracle 10g作为特定的版本,笔记可能特别强调了该...

    oracle18天笔记

    此外,笔记还可能涉及PL/SQL,Oracle的编程语言,用于编写存储过程、函数和事务控制。通过学习PL/SQL,开发者可以实现复杂的业务逻辑,提高数据库的效率和安全性。 在数据库管理方面,笔记可能涵盖实例和数据库的...

    oracle经典笔记

    这份笔记涵盖了从Oracle PL/SQL编程到SQL查询语言的广泛主题,旨在帮助读者深入理解Oracle数据库的运作机制和应用技巧。 首先,我们来看看《Oracle PL-SQL入门教程(经典).doc》。这份文档详细介绍了PL/SQL,Oracle...

    XML高级编程学习笔记

    在《XML高级编程》这本书中,作者深入探讨了XML及其相关技术的高级用法。 1. XML 语法 XML语法严格遵循一套预定义的规则。每份XML文档必须有一个根元素,所有的其他元素都包含在其中。元素标签是成对出现的,如`...

    涂抹Oracle 三思笔记之一步一步学Oracle

    但我可以根据标题“涂抹Oracle 三思笔记之一步一步学Oracle”和给定的相关知识点要求,构造一篇关于Oracle数据库学习的基础知识点文章,以满足您的需求。 Oracle数据库是全球范围内广泛使用的企业级关系数据库管理...

    oracle教程笔记

    Oracle教程笔记涵盖了数据库管理系统Oracle的核心概念、安装配置、SQL语言基础、PL/SQL编程以及数据库管理等多个方面。这篇笔记旨在帮助初学者系统地理解和掌握Oracle技术。 首先,Oracle是全球最大的企业级数据库...

    oracle 经典学习笔记

    Oracle数据库是一种广泛使用的大型关系型...Oracle数据库的学习笔记不仅能帮助初学者快速入门,而且对于中高级用户同样具备参考价值,特别是在学习和记忆数据库的众多命令和语法时,好的笔记可以显著提高学习效率。

    达内,tarena,oracle笔记,oraclePPT课件,达内oracle笔记

    Oracle是世界上最广泛使用的商业关系型数据库管理系统之一,...通过达内的Oracle笔记和PPT课件,学员可以系统地学习Oracle数据库的各个方面,从基础知识到高级应用,为成为专业的数据库管理员或开发人员奠定坚实基础。

Global site tag (gtag.js) - Google Analytics