- 浏览: 253117 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (298)
- 工作感悟 (6)
- java基础 (23)
- 计算机硬件知识 (1)
- 计算机网络知识 (2)
- Struts (3)
- Srping (4)
- hibernate (0)
- ibatis (0)
- webservice (4)
- Thread (22)
- maven (5)
- ubuntu/linux/centos/redhat (46)
- SSO (1)
- ESB (0)
- 工作流 (0)
- oracle (15)
- 云计算 (1)
- hadoop (1)
- nosql (0)
- mysql (3)
- sqlserver (0)
- jquery (0)
- 分布式 (3)
- 集群 (0)
- 设计模式 (2)
- EJB (0)
- map (0)
- cache (5)
- Niginx+varnish+squid+Ats (14)
- Apache (0)
- 工作/职业规划 (0)
- Scala & Groovy (1)
- English (4)
- 数据结构/算法 (6)
- 开发工具 (5)
- 测试 (2)
- Exception (0)
- 定时器 (3)
- j2ee (2)
- 部署 (1)
- Openssl (1)
- 操作系统 (3)
- kvm (13)
- libvirt (5)
- PostgreSql (5)
- 虚拟化 (3)
- 概念理解 (1)
- virt-manager (1)
- RESTful (3)
- 其它 (4)
- ssh2 (14)
- windows (1)
- 房产 (2)
- svn (1)
- 手机 (1)
- ant (1)
- flume (2)
- sqoop (1)
- fastdfs (5)
- log4j (1)
- SPDY (1)
- mongodb (2)
- MQ (2)
- Mina (1)
- dubbo (4)
- PMP (1)
- Webshpere (2)
- jvm (1)
- Btrace (1)
- zookeeper (7)
- UML (1)
- spring cloud (6)
- spring boot (5)
- storm (0)
- 软件管理 (1)
- elasticsearch (1)
- 协议 (2)
- docker (1)
- 性能 (2)
- 安全 (1)
- 代码规范 (1)
- mqtt (1)
- lombok (1)
- 车联网 (1)
- kafka (1)
最新评论
1.case when 示例
select task_id taskId,
start_time startTime,
end_time endTime,
status status,
plan_type planType,
is_manual isManual,
is_pilotCal isPilotCal,
scheduling_code schedulingCode
from log_schedule_plan
where plan_type = 'RSV_SCHEDULING_PLAN'
and sysdate > (case when is_manual=0 then (start_time + interval '10' minute) else (start_time + interval '2' minute) end)
2.merge 示例
merge
into WAREH_LOCKED_LST wll using (select
wareh_id,prod_id,locked_type,sum(locked_qty) locked_qty from
TEMP_UR_WAREH_LOCKED_LST where id=#batchId# group by
wareh_id,prod_id,locked_type)uwllt
on (wll.wareh_id = uwllt.wareh_id
and wll.prod_id = uwllt.prod_id
and wll.locked_type = uwllt.locked_type
)
when matched then update
set wll.locked_qty = nvl(wll.locked_qty,0) +
nvl(uwllt.locked_qty,0)
,stk_change_date =systimestamp
when not matched
then
insert
(PROD_ID, WAREH_ID, locked_type, locked_qty,STK_CHANGE_DATE)
values(
uwllt.prod_id,
uwllt.wareh_id,
uwllt.locked_type,
uwllt.locked_qty,
systimestamp
)
ps:由自查询关联查询的记录,必须只有一条,否则会报错.
merge into jimmy_student js using
jimmy_student1 js1
on (js1.id = js.id)
when matched then update
set js.score = js.score + 100 where js.score + 100 <=200
when not matched
then insert values(js1.id,js1.name,js1.score,js1.subject)
更新语句可以加where过滤条件,insert,update可以去掉一个
3.upper(lsp.task_id) = lower(lower(lsp.task_id))来判断task_id字段是否为纯数字
eg:select * from log_schedule_plan lsp where (upper(lsp.task_id) = lower(lower(lsp.task_id)))
4.联合分区(其它分区略) range_hash联合分区
create table JIMMY_STUDENT2
(
ID NUMBER,
NAME VARCHAR2(20),
SCORE NUMBER,
SUBJECT VARCHAR2(20),
CDATE DATE
)PARTITION BY RANGE(SCORE)
SUBPARTITION BY HASH(SUBJECT)SUBPARTITIONS 2
(
PARTITION part_1 VALUES LESS THAN (80)
(
SUBPARTITION part_1_sub_1,
SUBPARTITION part_1_sub_2,
SUBPARTITION part_1_sub_3
),
PARTITION part_2 VALUES LESS THAN (150)
(
SUBPARTITION part_2_sub_1,
SUBPARTITION part_2_sub_2
)
);
5.查看分区信息
select ut.partitioned from user_tables ut where table_name ='UR_RESERVED_SOURCE'//查看是否为分区表
SELECT * FROM USER_TAB_PARTITIONS WHERE TABLE_NAME ='JIMMY_STUDENT2'//查看分区表的详细信息
6.查询当前锁表信息
select b.owner,b.object_name,a.session_id,a.locked_mode
from v$locked_object a,dba_objects b
where b.object_id = a.object_id;
select task_id taskId,
start_time startTime,
end_time endTime,
status status,
plan_type planType,
is_manual isManual,
is_pilotCal isPilotCal,
scheduling_code schedulingCode
from log_schedule_plan
where plan_type = 'RSV_SCHEDULING_PLAN'
and sysdate > (case when is_manual=0 then (start_time + interval '10' minute) else (start_time + interval '2' minute) end)
2.merge 示例
merge
into WAREH_LOCKED_LST wll using (select
wareh_id,prod_id,locked_type,sum(locked_qty) locked_qty from
TEMP_UR_WAREH_LOCKED_LST where id=#batchId# group by
wareh_id,prod_id,locked_type)uwllt
on (wll.wareh_id = uwllt.wareh_id
and wll.prod_id = uwllt.prod_id
and wll.locked_type = uwllt.locked_type
)
when matched then update
set wll.locked_qty = nvl(wll.locked_qty,0) +
nvl(uwllt.locked_qty,0)
,stk_change_date =systimestamp
when not matched
then
insert
(PROD_ID, WAREH_ID, locked_type, locked_qty,STK_CHANGE_DATE)
values(
uwllt.prod_id,
uwllt.wareh_id,
uwllt.locked_type,
uwllt.locked_qty,
systimestamp
)
ps:由自查询关联查询的记录,必须只有一条,否则会报错.
merge into jimmy_student js using
jimmy_student1 js1
on (js1.id = js.id)
when matched then update
set js.score = js.score + 100 where js.score + 100 <=200
when not matched
then insert values(js1.id,js1.name,js1.score,js1.subject)
更新语句可以加where过滤条件,insert,update可以去掉一个
3.upper(lsp.task_id) = lower(lower(lsp.task_id))来判断task_id字段是否为纯数字
eg:select * from log_schedule_plan lsp where (upper(lsp.task_id) = lower(lower(lsp.task_id)))
4.联合分区(其它分区略) range_hash联合分区
create table JIMMY_STUDENT2
(
ID NUMBER,
NAME VARCHAR2(20),
SCORE NUMBER,
SUBJECT VARCHAR2(20),
CDATE DATE
)PARTITION BY RANGE(SCORE)
SUBPARTITION BY HASH(SUBJECT)SUBPARTITIONS 2
(
PARTITION part_1 VALUES LESS THAN (80)
(
SUBPARTITION part_1_sub_1,
SUBPARTITION part_1_sub_2,
SUBPARTITION part_1_sub_3
),
PARTITION part_2 VALUES LESS THAN (150)
(
SUBPARTITION part_2_sub_1,
SUBPARTITION part_2_sub_2
)
);
5.查看分区信息
select ut.partitioned from user_tables ut where table_name ='UR_RESERVED_SOURCE'//查看是否为分区表
SELECT * FROM USER_TAB_PARTITIONS WHERE TABLE_NAME ='JIMMY_STUDENT2'//查看分区表的详细信息
6.查询当前锁表信息
select b.owner,b.object_name,a.session_id,a.locked_mode
from v$locked_object a,dba_objects b
where b.object_id = a.object_id;
发表评论
-
tomcat 数据源集群配置
2016-05-10 20:44 459jdbc:oracle:thin:@(DESCRIPTION= ... -
使用ORACLE自带工具sqlload导入文本文件
2014-07-17 13:36 722Dos 环境下使用SQl*Loader ... -
Oracle append有什么用
2014-07-17 13:27 809/*+append*/ 1. append 属于dire ... -
ORACLE锁机制
2013-08-22 10:11 579数据库是一个多用户使 ... -
Java中JDBC事务和JTA事务区别
2013-08-08 17:15 1349一、事务概述 事务表示 ... -
oracle hints用法大全
2013-07-16 10:52 747在向大家详细介绍Oracle ... -
oracle translate() 详解+实例
2013-07-08 14:58 668一、语法: TRANSLATE(strin ... -
oracle联合查询
2013-05-22 15:15 677等值连接 select * from books,books ... -
oracle锁表问题
2013-05-21 10:38 627oracle锁表问题 查询表 ... -
oracle中insert,copy,insert append执行对比
2013-04-09 13:20 780oracle中insert,copy,insert appen ... -
Oracle的表压缩
2013-04-09 11:09 696Oracle压缩数据的处 ... -
Oracle读写分离架构
2013-04-09 10:30 777读写分离是架构分布式 ... -
ORACLE 各种PARTITION 的分析(原)
2013-04-07 13:34 860总结自ORACLE官方在线帮助文档。 ORACLE 为构建 ... -
ORACLE分区表的使用和管理
2013-04-07 11:13 5451创建和使用分区表 Orac ...
相关推荐
Oracle学习,常用sql语句汇总,适合新手使用。
ORACLE常用SQL语句大全.pdf
oracle的sql语句和语法,初学者用用还不错,了解oracle的一些用法
Oracle_Sql语句资料oracle+110个常用函数经典SQL语句大全,可供学习参考。
可将常规的sqlserver 的sql语句转换为 oracle语法,核心逻辑在SqlConvertToOracle.pas,便于入门。
oracle向mysql建表语句的迁移。 直接表结构的生成sql脚本
这个是ORACLE常用的SQL语法和数据对象,格式是CHM文档,很适合新手查看
ORACLE 常用的SQL语法和数据对象(CHM电子书) 常用SQL语句
本猿最近做数据库迁移,修改了大量sql语句,对oracle和MySQL语法之间的一些不同之处总结了一些。
Oracle Sql语句转换成Mysql Sql语句java 源码,非常简单,只要给定源oracle sql语句地址,和生成目标文件地址运行即可。
ORACLE_UPDATE_语句语法与性能分析
要将 Oracle DML 语句和 PL/SQL 程序迁移到 SQL Server 时,请按下列步骤执行: 1. 验证所有 SELECT、INSERT、UPDATE 和 DELETE 语句的语法是有效的。进行任何必要的修改。 2. 把所有外部联接改为 SQL-92 标准外部...
DB2与ORACLE常用语句对照,常用命令,语法格式
Linux下操作Oracle的常用语句。
Oracle_基本建表语句,创建表格基本语法,基本建表语句
Oracle的API,SQL语句大全,学习ORACLE,SQL非常好的资料哦.真的不错.
基本SQL语法 常用SQL语句 例句套用
oracle dba 常用的 sql 语句 包括 空间,用户,进程等等。
本文介绍了Oracle PL/SQL语句块、变量、赋值、条件语句、循环语句、游标、集合及例外等,在测试后,结合实例讲解了PL/SQL语法的使用,并对重点内容进行了标注和解析。读者只需按照本文进行学习和操作,即可掌握...
Oracle在执行一个SQL之前,首先要分析一下语句的执行计划,然后再按执行计划去执行。分析语句的执行计划的工作是由优化器(Optimizer)来完成的。不同的情况,一条SQL可能有多种执行计划,但在某一时点,一定只有一种执行...