
Oracle 开发
文章平均质量分 66
changnan85
逆水行舟不进则退
人无远虑必有近忧
展开
-
客户端连接ORACLE的几种方法
客户端连接ORACLE的几种方法一、HOSTNAME方法 对于网络结构比较单一,ORACLE服务器比较少的情况下,可以使用HOSTNAME方法。不过这种方法有几个限制: 1、 必须使用TCP/IP协议 2、 不能使用高级管理工具,比如Oracle Connection Manager 3、 客户端必须有相应的扩展命名服务,比如DNS或HOSTS文件 4、 LISTENER的监听端转载 2007-05-30 09:24:00 · 866 阅读 · 0 评论 -
【PLSQL系列】1.变量
1.标量变量标量变量是指只能存放单个数值的变量。 定义标量变量:identifier [CONSTANT] datatype [NOT NULL] [:= | DEFAULT expr]DEFAULT: 用于为变量和常量指定初始值。Expr: 用于指定初始值的PLSQL表达式,可以是文本值、其他变量、函数等。2.复合变量复合变量是指用于存放多个值的变量。a)PL原创 2009-11-24 16:05:00 · 520 阅读 · 0 评论 -
CNOUG 里比较有意思的一个SQL
请教 搞了一天没弄出来 数据的筛选一个表 : ----------------------- 列1 列2 列3 ----------------------- b c 20 ----------------------- c b 20 ----------------------- f h 9 ------------转载 2008-12-23 13:09:00 · 447 阅读 · 0 评论 -
行转列 SQL ,connect by level
请教一个关于表转换的sql语句我有一张表:290 集客部 70420 35.55 68233205 海沧 20393 35.11 18843204 翔安 17893 34.16 17543203 集美原创 2008-12-29 13:13:00 · 1725 阅读 · 0 评论 -
Oracle 之 bulk collect 的用法
通过bulk collect减少loop处理的开销采用bulk collect可以将查询结果一次性地加载到collections中。而不是通过cursor一条一条地处理。可以在select into,fetch into,returning into语句使用bulk collect。注意在使用bulk collect时,所有的into变量都必须是collections.举几个简转载 2008-03-14 10:44:00 · 1094 阅读 · 0 评论 -
详介oracle的RBO/CBO优化器
Oracle的优化器有两种优化方式,即基于规则的优化方式(Rule-Based Optimization,简称为RBO)和基于代价的优化方式(Cost-Based Optimization,简称为CBO),在Oracle8及以后的版本,Oracle强列推荐用CBO的方式 RBO方式:优化器在分析SQL语句时,所遵循的是Oracle内部预定的一些规则。比如我们常见的,当一个where子句中原创 2007-10-31 16:17:00 · 563 阅读 · 0 评论 -
oracle 开发学习笔记 20071011
2007-10-11 oracle培训内容 /* 备注:字符串和日期的值用符号(‘)括起来。 */ -- where 句的条件为真的场合screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor=hand; this.alt=Click here to open new wi原创 2007-10-10 17:39:00 · 486 阅读 · 0 评论 -
Oracle 10G -- 增强的CONNECT BY子句
为 了更好的查询一个树状结构的表,在Oracle的PL/SQL中提供乐一个诱人的特性——CONNECT BY子句。它大大的方便了我们查找树状表:遍历一棵树、寻找某个分支......,但还是存在一些不足。在Oracle 10G,就对这个特性做了增强。下面就举例说明一下。CONNECT_BY_ISCYCLE树状一般都是在一条记录中记录一个当前节点的ID和这个节点的父ID来实现。但是,一旦数据中转载 2007-09-06 17:08:00 · 708 阅读 · 0 评论 -
case when 和 coalesce
题目: 求一语句实现以下功能,有COL1 ,COL2,COL3,COL4,COL5,COL6,COL7,及ST_SIZETEMPLATECODE. 如ST_COL1,ST_COL7的值为1.2.3.4.5.6.7则 ST_SIZETEMPLATECODE为1—7,如 ST_COL7为空,则ST_SIZETEMPLATECODE为1—6,简言之就是只要头尾两个值 数据:原创 2007-05-30 09:33:00 · 1428 阅读 · 1 评论 -
oracle union & cast & sum & group by
问题: create table main(id varchar2(20),yearly varchar2(4),unitid varchar2(20)); alter table main add constraint pk_main primary key (id) ; insert into MAIN (ID, YEARLY, UNITID) values (1, 2007, 1原创 2007-05-30 09:30:00 · 704 阅读 · 0 评论 -
level和 connect by 的结合使用
问题: 13.表结构如下: 币种 金额(本币) 金额(外币) 001 100 500 001 200 600 013 300 700 014 400 800 希望显示的结果: 币种 金额 001 100 001 200 013 700 001 300 014 800 001 400 注:001代表本币,其他的都是外币,检索结果中,外币币种都生成2条记录,一条是外币信息一条是本币信息 可以使用原创 2007-05-30 09:29:00 · 631 阅读 · 0 评论 -
CONNECT BY 学习笔记
select COL_M,COL_S from (SELECT DECODE(COL_M,COL_S,XX,COL_M) AS COL_M,COL_S FROM TEMPKEN) start with COL_M = 011 connect by prior COL_S = COL_M UNION select COL_M,COL_S from原创 2007-05-30 09:28:00 · 417 阅读 · 0 评论 -
oracle 分析函数:ROW_NUMBER() OVER(PARTITION BY ID ORDER BY VERSION DESC)
练习题: 如下表,我要查询每个ID的最高版本以及最高版本的前一版本,该怎么写呢? ID 版本 属性 001 A red 001 B green 001 C brown 002 A red 002 B blue 想输出: ID 版本 属性 001 B green 001 C brown 002 A red 002 B blue 答案: SELECT ID,VERSION,ATTRIBUTE,R原创 2007-05-30 09:26:00 · 1935 阅读 · 0 评论 -
oracle 级联更新
正确的oracle多表更新的语法为:update lswlzd aset a.lswlzd_wlmc=(select b.newmc from kgcwltz081120 b where a.lswlzd_wlbh=b.wlbh)where exists(select 1 from kgcwltz081120 b where a.lswlzd_wlb转载 2011-11-22 10:20:11 · 341 阅读 · 0 评论