
Oracle
文章平均质量分 81
鱼片橙子
这个作者很懒,什么都没留下…
展开
-
sql优化个人总结(全)
sql优化总结--博客第一次自己写博客,以后要坚持每掌握一个技能点,就要写一篇博客出来,做一个不满足于一个只会写if...else的程序员。最近三个月入职了一家新的公司,做的是CRM系统,将公司多个平台的数据同步到CRM,进行查询,统计和汇总。由于数据量比较庞大,大部分表数据上百万,甚至有的表数据上千万。所以在系统中做sql优化比较多,特此写一篇博客总结一下关于sql优化方面的经验。...转载 2018-11-26 17:45:27 · 110 阅读 · 0 评论 -
oracle,列转行
CREATE OR REPLACE FUNCTION STR_TO_TB ( p_str varchar2, p_delim varchar2) return t_vc as v_result t_vc; v_delimlen number := length(p_delim); i number := 1; j number; p ...原创 2018-12-13 11:43:07 · 195 阅读 · 0 评论 -
实现关联条件的casewhen效果
select p.pcmxid, j.csjtf * p.jsrs + j.dpf * p.jsrs + j.zsf * p.jsrs * p.sjts + j.clbzf * p.jsrs * p.sjts + j.bxf * p.jsrs * p.sjts as jsxj from pcmx p left join (----关联一个过渡表 sele...原创 2018-12-18 10:32:44 · 1574 阅读 · 0 评论 -
Oracle中用decode或nvl实现对where后面的条件进行if判断
当需要用的对表中某个字段的不同状态进行条件变化时用decode或nvl来实现select * from cj0703 where nvl(hkjs0101id,zdid)='00001';原创 2019-01-17 10:00:34 · 10178 阅读 · 0 评论 -
Oracle dmp文件导入(还原)到不同的表空间和不同的用户下
-------------------------------------从生产环境拷贝一个dmp备份文件,在另外一台电脑上搭建测试环境,用imp命令导入dmp文件时提示如下错误:问题描述:IMP-00038:无法转换为环境字符集句柄IMP-00000:未成功终止导入解决方法: 使用impdp命令进行导入。 参考导入命令 impdp onlinecolzs/onl...转载 2019-02-07 15:27:26 · 3810 阅读 · 1 评论 -
oracle cols 查询表字段类型及长度 function
像desc 一样,用sql 查询表字段类型及长度,不多说很简单 anbob@ORCL> CREATE TABLE TEST_DATATYPE (ID INT,ID2 NUMBER(20),ID3 CHAR(2),ID4 DATE,ID5 VARCHAR2(30)); Table created. anbob@ORCL> select table_name,column...转载 2019-01-30 09:45:18 · 543 阅读 · 0 评论 -
ORACLE判别字段是否包含中文
在ORACLE数据库中如何查找那些字段里面包含中文的数据记录呢,有时候就是有这样的特殊需求,下面整理了一些判别字段中包含中文记录的几个方法1:使用ASCIISTR函数判别ASCIISTR函数说明:ASCIISTR返回字符的ASCII形式的字符串。非ASCII的字符被转化为\xxxx的形式。使用ASCIISTR函数也是根据非ASCII字符会被转化这个特性来判别中文字符...转载 2019-03-22 14:20:33 · 546 阅读 · 0 评论 -
Oracle的RANK() OVER 函数,只排符合条件的数据
select a.*, DECODE(tj, '1', (RANK() OVER(PARTITION BY a.sx ORDER BY DECODE(tj, '1', jd, '00') DESC)), '') from (select a.*,a.num+1 as jd from a) awhere sx='a'order by jd desc原创 2019-05-27 16:16:45 · 1880 阅读 · 0 评论 -
二进制状态码
建表过程中用int表示各种状态二进制 状态 int数字 1 初级 1 10 中级 2 100 高级 4 11=3 就是为初级加中级101=5 就是初级加高级这样就可以防止重复了...原创 2019-08-09 17:35:39 · 467 阅读 · 0 评论 -
with 递归查询一条数据下所有子数据
WITH RECURSIVE modt AS ( SELECT ID , typeid, cname, parentid, score, days, ...原创 2019-08-16 20:01:24 · 265 阅读 · 0 评论 -
Oracle创建java排序实现“,”分隔的数字字符串排序(由小到大)
create or replace and compile java source named Pxkczz asimport java.util.Arrays;import java.util.Collections;public class Pxkczz { public static String pxkkzz(String str) {...原创 2018-11-21 16:58:04 · 221 阅读 · 0 评论 -
数据库还原
数据库还原 ( 1、切换到Oracle 用户下,2、找到数据库文件目录3、解压 4、执行下面的命令(1-6在plsql中执行 ,7在Linux下执行))使用的是SecureFXPortable.exe软件; --1、查询那些用户链接了数据库 select username, sid, serial# from v$session where username='DZKJ...原创 2018-11-16 11:40:25 · 250 阅读 · 1 评论 -
Oracle的NVL函数用法
从两个表达式返回一个非 null 值。语法NVL(eExpression1, eExpression2)参数eExpression1, eExpression2如果 eExpression1 的计算结果为 null 值,则 NVL( ) 返回 eExpression2。如果 eExpression1 的计算结果不是 null 值,则返回 eExpression1。eExpression1 和 eE...转载 2018-06-28 20:56:23 · 218 阅读 · 0 评论 -
Oracle中的instr()函数 详解及应用
1)instr()函数的格式 (俗称:字符查找函数)格式一:instr( string1, string2 ) / instr(源字符串, 目标字符串)格式二:instr( string1, string2 [, start_position [, nth_appearance ] ] ) / instr(源字符串, 目标字符串, 起始位置, 匹配序号)解析:str...转载 2018-08-09 09:42:39 · 1699 阅读 · 0 评论 -
oracle 索引
在关系数据库中,索引是一种与表有关的数据库结构,它可以使对应于表的SQL语句执行得更快。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。 对于数据库来说,索引是一个必选项,但对于现在的各种大型数据库来说,索引可以大大提高数据库的性能,以至于它变成了数据库不可缺少的一部分。 索引分类:逻辑分类single column or concatenated...转载 2018-08-29 19:24:06 · 116 阅读 · 0 评论 -
execute immediate的简单用法(oracle)
create or replace procedure proc_test(--参数区域)is --变量区域 --sql脚本 v_sql varchar2(2000) :=''; --记录学生数量 v_num number;begin--执行区域 -- execute immediate用法1:立刻执行sql语句 v_sql :=...转载 2018-09-12 18:12:08 · 129 阅读 · 0 评论 -
Oracle切割
CREATE OR REPLACE FUNCTION STR_TO_TB ( p_str varchar2, p_delim varchar2) return t_vc as v_result t_vc; v_delimlen number := length(p_delim); i number := 1; j number; p ...原创 2018-09-17 20:00:03 · 510 阅读 · 0 评论 -
oracle 存储过程 报 无效字符
lv_sql:=' insert into ETL_SUCESS_AMOUNT select SEQ_OS_ETL_AMOUNTID.NEXTVAL AS AMOUNTID,1,AMOUNT_DATA,AMOUNT_HOUR, serviceid,portalid,mouduleid,actionid,RESERVE1_ID,RESERVE2_ID,RESERVE3_ID, ...转载 2018-09-13 09:48:12 · 1309 阅读 · 0 评论 -
一个Oracle动态SQL拼接
create or replace function getpjxfjd1(columnxh in varchar2,columnxnxq in varchar2,columntab in varchar2) return number is existsCol number(6,2); v_sql varchar2(30000) :=''; begin v_sql:='sele...原创 2018-09-13 10:16:46 · 1493 阅读 · 0 评论 -
Oracle 去除两边空格
sql 去掉两头空格sql语法中没有直接去除两头空格的函数,但有ltrim()去除左空格rtrim()去除右空格。合起来用就是sql的trim()函数,即select ltrim(rtrim(UsrName))转载 2018-10-19 10:23:29 · 14377 阅读 · 0 评论 -
SQL中Truncate的用法
转自:http://www.studyofnet.com/news/555.html本文导读:删除表中的数据的方法有delete,truncate, 其中TRUNCATE TABLE用于删除表中的所有行,而不记录单个行删除操作。TRUNCATE TABLE 与没有 WHERE 子句的 DELETE 语句类似;但是,TRUNCATE TABLE 速度更快,使用的系统资源和事务日志资源更少。下面介...转载 2018-10-23 20:27:00 · 556 阅读 · 0 评论 -
ORACLE自定义顺序排序
ORACLE可以借助DECODE函数,自定义顺序排序:select * from ( select 'Nick' as item from dual union all select 'Viki' as item from dual union all select 'Glen' as item from dual union all ...转载 2018-11-05 15:37:45 · 359 阅读 · 0 评论 -
Oracle中的instr()函数 详解及应用
1)instr()函数的格式 (俗称:字符查找函数)格式一:instr( string1, string2 ) / instr(源字符串, 目标字符串)格式二:instr( string1, string2 [, start_position [, nth_appearance ] ] ) / instr(源字符串, 目标字符串, 起始位置, 匹配序号)解析:string2 的...转载 2018-06-06 18:46:17 · 137 阅读 · 0 评论