自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 oracle 列转行(把一个表的所有列连成一行,用逗号分隔)

从网上找了都是关于decode的方法实现的列转行,后来发现了用orcale的wmsys.wm_concat方法可以轻松的实现,下面的范例是网上找的:wmsys.wm_concat要10g以后才可以。 表结构: 1 A 1 B 1 C 2 A 2 B 3 C 3 F 4 D 转换后变成: 1 A,B,C 2 A,B 3 C,F 4 D 方法: 假设你的表结构是tb_name(id, remark),则语句如下: SELEC

2020-06-24 15:18:26 758

原创 Oracle的汉字排序问题

oracle在9i之前是对汉字的排序是按照二进制编码进行排序的,很不适合我们的国情,在oracle9i之后,汉字的排序方式有了以下三种方式:1、使用拼音排序 NLS_SORT=SCHINESE_PINYIN_M2、使用笔画排序 NLS_SORT=SCHINESE_STROKE_M 第一顺序笔画,第二顺序部首;3、使用偏旁部首排序 NLS_SORT=SCHINESE_RADICAL_M 第一顺序部首,第二顺序笔画; 这样,就可以在查询的时候,指定汉字的排序方式,设定方式可以分为以下

2020-06-24 15:17:15 392

原创 在Oracle中使用rank()over()排名的问题

—rank()over(order by 列名 排序)的结果是不连续的,如果有4个人,其中有3个是并列第1名,那么最后的排序结果结果如:1 1 1 4select scoreid, studentid,COURSENAME,totalexamscore ,rank()over(order by TOTALEXAMSCORE desc)orderbyNumfrom CJ_SCORECOURSE a ,CJ_COURSESCORE bwhere a.SCORECOURSEID = b.SCORECOUR

2020-06-24 15:16:01 288

原创 rollup用法试例

select (case when LQZYDM=‘小计’ and LQYXSM!=‘总计’ then ‘’ else LQYXSM end) LQYXSM,(case when LQYXSM =‘总计’ then ‘’ else LQZYDM end) LQZYDM,myNumfrom(select (case when LQYXSM is null then ‘总计’ else LQYXSM end) LQYXSM ,(case when LQZYDM is null then ‘小计’ el

2020-06-24 15:14:19 224

原创 在where条件中如何使用CASE子句

select currentlyvalue from fw_sysconfig where PARAMCODE=‘isDegreeCourse’–注:currentlyvalue=‘是’ 下面sql中使用条件:isdegreecourse = ‘是’ ;否则使用条件 studytypecode = 1SELECT *FROM base_trainschemecoursewhere isdegreecourse=(case when (select currentlyvalue from fw_sy

2020-06-24 15:13:20 1832

原创 Oracle9i使用闪回操作

从9i开始,Oracle提供了闪回(FLASHBACK)功能。即查找当前时间之前的某个时间点系统或表的状态。可以闪回的最大时间和回滚空间有关。如果使用了自动管理回滚表空间,那么UNDO_RETENTION给出了闪回支持的最小时间。也就是说,FLASHBACK最少可以支持UNDO_RETENTION给出的时间,如果系统比较闲,则可以闪回更长的时间。(当然,如果回滚表空间的空间分配不足,当系统处于忙时,有可能重用还没有达到UNDO_RETENTION时间限制的数据的空间)使用闪回的一个前提是表不能进行DDL

2020-06-24 15:11:26 215

原创 ORACLE中树的各种查找方法.

注:以下sql可以在开发库的ZK_COMPONENT中执行。1.查找一个节点的所有 直属子节点(所有后代)。Sql代码SELECT * FROM zk_tree START WITH depid = ‘08130006’ CONNECT BY parentdepid = PRIOR depid ORDER SIBLINGS BY SORTBYps:ORDER SIBLINGS BY SORTBY:每层节点数据的排序。这个查找的是ID为’08130006’ 的节点下的所有直属子类节点,包括子辈的

2020-06-24 15:10:23 382

原创 数据恢复寻找时间戳

DECLAREct NUMBER;dt varchar2(200);BEGINdt:=’’;FOR d IN 21 … 21 LOOP – 日期FOR h IN 15 … 18 LOOP --小时FOR m IN 0 … 59 LOOP --分钟FOR s IN 0 … 59 LOOP --秒BEGINIF not (s=0 or s=30 ) THEN --每隔30s检查continue;END IF;dt:=‘2015-09-’||lpad(to_char(d),2

2020-06-24 15:09:07 213

原创 oracle解锁

–1. 如下语句 查询锁定的表:SELECT l.session_id sid, s.serial#, l.locked_mode,l.oracle_username,l.os_user_name,s.machine, s.terminal, o.object_name, s.logon_timeFROM vlockedobjectl,allobjectso,vlocked_object l, all_objects o, vlockedo​bjectl,allo​bjectso,vsession s

2020-06-24 15:07:51 171

原创 用SQL解决两道有趣的题(二)

Oracle的SQL语句功能还是很强的,看到两道比较有趣的题,用SQL来尝试求解。第二个问题:Gauss和Poincare在天堂相遇了,上帝说:你们都是人间最伟大的数学家,那我来出道题考考你们谁更聪明。我在左手写一个大于1小于100的数,在右手同样写一个大于1小于100的数,然后把他们的和写在Gauss手上,把积写在Poincare手上,看看你们能不能猜出这两个数字是几。Gauss看了手上的数字,说:“我不知道这两个数字是几,可我保证Poincare也不知道。”Poincare看了手上的数字,说:“

2020-06-24 15:06:41 206

原创 用SQL解决两道有趣的题(一)

Oracle的SQL语句功能还是很强的,看到两道比较有趣的题,用SQL来尝试求解。第一个问题:已知两个1~30之间的数字,甲知道两数之和,乙知道两数之积。甲问乙:"你知道是哪两个数吗?"乙说:“不知道”;乙问甲:"你知道是哪两个数吗?"甲说:“也不知道”;于是,乙说:“那我知道了”;随后甲也说:“那我也知道了”;这两个数是什么?先给出SQL解,然后简单描述一下。这道题分两种情况,两个数不重复,那么有两个可能结果:SQL> WITH2 T AS3 (SELECT ROWNUM N

2020-06-24 15:05:40 217

原创 Oracle 函数大全(字符串函数,数学函数,日期函数,逻辑运算函数,其他函数)

SQL中的单记录函数1.ASCII返回与指定的字符对应的十进制数;SQL> select ascii(’A’) A,ascii(’a’) a,ascii(’0’) zero,ascii(’ ’) space from dual;A A ZERO SPACE65 97 48 322.CHR给出整数,返回对应的字符;SQL> select chr(54740) zhao,chr(65) chr65 from dual;ZH C赵 A3.CONCAT连接两个字符串;SQL

2020-06-24 15:03:35 967

原创 JDBC连接oracle数据库配置正确但是连接报错Caused by: ORA-01017: invalid username/password

JDBC连接oracle数据库配置正确但是连接报错Caused by: ORA-01017: invalid username/password; logon denied问题描述:在华为云上部署应用服务,启动服务后,调用接口时报ORA-01017: invalid username/password错误(在本地启动服务调用接口一切正常);解决方案:问题描述:在华为云上部署应用服务,启动服务后,调用接口时报ORA-01017: invalid username/password错误(在本地启动服务调用接口

2020-06-23 15:44:41 869

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除