精华内容
下载资源
问答
  • Oracle截取某个字段前几个字符subStr

    千次阅读 2020-09-17 01:44:54
    筛选出多子账户对应的唯一主账户信息 select distinct substr(BANK_ACCT_NO,1,18) BANK_ACCT_NO from table_name; 说明: 1. BANK_ACCT_NO: 子账户 2. substr(BANK_ACCT_NO,1,18): 1 起始位置, 18 截取长度 3...
    
    场景: 1. 根据主账户查询子账户交易明细
    	  2. 数据库只有子账户信息(子账户=18位主账户+6位子账户标志), 
    	  3. 筛选出多个子账户对应的唯一主账户信息
    
    select distinct substr(BANK_ACCT_NO,1,18) BANK_ACCT_NO from table_name;
    说明: 1. BANK_ACCT_NO: 子账户
    	  2. substr(BANK_ACCT_NO,1,18): 1 起始位置, 18 截取长度
    	  3. table_name: 表名
    	  4. distinct: 去重
    
    
    展开全文
  • Oracle获取字符串的最后

    万次阅读 2018-08-06 18:36:45
    Oracle 字符串函数 substr(字符串,截取开始位置,截取长度) 1. 如果最后一截取长度参数为空,则表示从截取开始位置起截到最末 2. 如果截取开始位置 为大于0的数字,则表示从字符串左数位开始 3. 如果截取开始位置...
    substr(字符串,-10)
    Oracle 字符串函数 substr(字符串,截取开始位置,截取长度)
    1. 如果最后一个截取长度参数为空,则表示从截取开始位置起截到最末
    2. 如果截取开始位置 为大于0的数字,则表示从字符串左数几位开始
    3. 如果截取开始位置 为小于0的数字,则表示从字符串右数几位开始

     

    展开全文
  • 第一种方法 CREATE OR REPLACE FUNCTION MES_Get_StrOfIndex ( av_str varchar2, --要分割的字符串 ... av_index number --取第几个元素 ) return varchar2 is lv_str varchar2(1024); lv_strOfInd...

    第一种方法

    CREATE OR REPLACE FUNCTION MES_Get_StrOfIndex
    (
      av_str varchar2,  --要分割的字符串
      av_split varchar2,  --分隔符号
      av_index number --取第几个元素
    )
    return varchar2
    is
      lv_str varchar2(1024);
      lv_strOfIndex varchar2(1024);
      lv_length number;
      /***************************
      create by : pqh 2016-04-14
      Description : 字符分割函数
      ***************************/
    begin
      lv_str:=ltrim(rtrim(av_str));
      lv_str:=concat(lv_str,av_split);
      lv_length:=av_index;
      if lv_length=0 then
          lv_strOfIndex:=substr(lv_str,1,instr(lv_str,av_split)-length(av_split));
      else
          lv_length:=av_index+1;
         lv_strOfIndex:=substr(lv_str,instr(lv_str,av_split,1,av_index)+length(av_split),instr(lv_str,av_split,1,lv_length)-instr(lv_str,av_split,1,av_index)-length(av_split));
      end if;
      return  lv_strOfIndex;
    end MES_Get_StrOfIndex;

     

     

    第二种方法

     if instr(c_data.package_size,'*')>0 then      
             sPkgsize_1:=substr(c_data.package_size,1,instr(c_data.package_size,'*')-1);
             sPkgsize_1:=trim(sPkgsize_1);
             
             sPkgsize_2:=substr(c_data.package_size,instr(c_data.package_size,'*')+1);
             sPkgsize_2:=trim(sPkgsize_2);
          end if;      
          Update  pdc_control_value t set t.controlvalue= sPkgsize_1
          Where T.REQNO=sReqno
          AND T.CONTROLID IN (select T2.SYSID from Pdc_privilege_control t2 
          where  T2.WORKFLOWID='2c1dc484-d712-48cd-a28e-9b679aba419e' 
          AND T2.CONTROLNAME='ASSY_MarkTC_PS');      
          Update  pdc_control_value t set t.controlvalue= sPkgsize_2
          Where T.REQNO=sReqno
          AND T.CONTROLID IN (select T2.SYSID from Pdc_privilege_control t2 
          where  T2.WORKFLOWID='2c1dc484-d712-48cd-a28e-9b679aba419e' 
          AND T2.CONTROLNAME='ASSY_MarkTC_*');

    展开全文
  • SELECT REGEXP_SUBSTR ('test1,teat2,test3,test4,test5,test6') FROM DUAL; 悄悄的抄,我也是抄的
     SELECT REGEXP_SUBSTR ('test1,teat2,test3,test4,test5,test6')
      FROM DUAL;
    

    悄悄的抄,我也是抄的

    展开全文
  • 需求一:获取字符串中特定字符逗号","在字符串",abc,,,d,,ef,"中出现的次数(共出现7次)。 需求二: 获取字符串中特定字符串“@-”在字符串“@-ab@@cd--ef@h-j”中出现的次数(工出现1次) ---...
  • 参数1:包含的字符串 参数2:列名。列名前面的 , 是该列值的分隔符 FIND_IN_SET('包含的字符串',列名)
  • ORACLE获取字符串中数字部分

    千次阅读 2018-01-05 14:06:20
    select translate('1212中国2323','0123456789'||'1212中国2323','0123456789') from dual; select regexp_replace('23456中国3-00=.,45'...标签:regexp_replace regexp replace oracle 正则 函数的参数说明: 一共6
  • Oracle字符串截取最全方法总结

    万次阅读 多人点赞 2018-08-30 18:10:42
    substr 函数:截取字符串 语法:SUBSTR(string,start,[length]) string:表示源字符串,即要截取的字符串。 start:开始位置,从1开始查找。如果start是负数,则从string字符串末尾开始算起。 length:可选项...
  • 但是我们只需要字段的值,如下: 实现 获取数据字段已知字符串的位置,使用到了 instr()函数 instr()函数 instr(string,subString,position,ocurrence)查找字符串位置 解释: - string:源字符...
  • oracle求字段中指定字符串出现

    千次阅读 2020-03-20 11:08:22
    下面结果集中RESULT字段,分别... replace() 函数是用另外一值来替代字符串中的某个值。用法: replace(原字段,“原字段旧内容“,“原字段新内容“) wm_concat(column) 函数实现字段合并,column表示需要合并的列名称。
  • ORACLE中一个字符占多少字节

    千次阅读 2014-03-13 17:02:10
    oracle中一个字符特别是中文占几个字节是不同的。  比如我创立一个表create table test_ly(a varchar2(4),b nvarchar2(4))  错!最多能插入一个汉字加一个字母(或数字)。  你说b列最多能插入多少个汉字,2个...
  • oracle统计字符串包含字符个

    千次阅读 2015-07-09 11:37:00
    函数:REGEXP_COUNT(); select REGEXP_COUNT('1,2,6,8,7,9',',') from dual 结果:5 转载于:https://www.cnblogs.com/kingxiaozi/p/4632681.html
  • ORACLE数据库两个字符串比较

    千次阅读 2020-06-19 10:29:06
    Oracle数据库的两字段值为逗号分割的字符串,例如:字段A值为“1,2,3,5”,字段B为“2”。 想获取字段的交集(相同值)2,获取字段的差集(差异值)1,3,5。 一、最终实现的sql语句 1、获取交集(相同值...
  • 计算单个字符字符串中出现的次数: select length('HELLO WORLD!')-length(replace('HELLO WORLD!','L','')) from dual; --计算单个字符字符串中出现的次数: select length('10-11-30-22:dbsaleinst1_138-FRA')...
  • SELECT LENGTH(REGEXP_REPLACE(REPLACE('123,45,6,5', ',', '@'), '[^@]+', '')) COUNT FROM DUAL; 返回结果为3。
  • ORACLE日期时间函数大全  TO_DATE格式(以时间:2007-11-02 13:45:25为例)    Year:   yy two digits 两位年 显示值:07  yyy three digits 三位年 显示值:007  yyy
  • oracle截取某一个字符之前或之后的值;substr();instr() 函数介绍: 截取的函数: substr(?,?); substr(?,?,?);   获取目标字符出现的位置: instr(? , ? , ? ); ...
  • 最近在项目的过程中需要获取字符串的长度,并且进行
  • ORACLE统计一个字符串中的逗号

    千次阅读 2013-07-09 09:21:46
    参考论坛:http://rj0801zxh.iteye.com/admin/blogs/new   SELECT LENGTH(T1.INVESTIGATOR_ID) - LENGTH(REPLACE(T1.INVESTIGATOR_ID, ',', '')) LEN ,T1.INVESTIGATOR_ID FROM T_PC_EVIDENCE_TICKET T1; ...
  • oracle 获取时间

    千次阅读 2013-08-07 11:59:06
    Oracle关于时间/日期的操作   1.日期时间间隔操作 当前时间减去7分钟的时间 select sysdate,sysdate - interval '7' MINUTE from dual 当前时间减去7小时的时间 select sysdate - interval '7' hour from ...
  • SELECT SUBSTR(字段名,1,instr(字段名,’,’)-1) FROM 表名 –SUBSTR(参数一,参数二,参数三) 参数一:某个字符型字段 参数二:截取开始范围 参数三:截取结束范围 ...减掉1其实就是截取到这特定字符前面的位置 ...
  • #Oracle中的日期和字符串互相转换以及格式化 TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两位年 显示值:07 yyy three digits 三位年 显示值:007 yyyy four digits 四位年
  • add_months()函数 负数:当前月份减去多少月份 正数:当前月份添加多少月份。 字符串型: select to_char(add_months(trunc(sysdate),-1),'yyyy-mm-dd') from dual; 输出:2020-01-25 date 型: select to_...
  • select f_find('Ap@2233ll@@l@@','@') from dual 返回结果为5,代表‘@’在该字符串中出现5次。 同理 select f_find('Ap@223SWEQQQ3ll@@l@@','Q') from dual---返回3,代表Q在字符串中出现了3次, select f_find('我...
  • position, 起始位置, 从第几个字符开始匹配查找, 默认为 1 occurrence, 取第几次匹配的值。 modifier , 模式, 可以取的值有 i 不区分大小写 c 区分大小写 , 默认值 示例 对逗号分隔的字符串 11,22,3
  • oracle获取今年在内的前几年、后年 --前几年 -- eg 3年 select to_char(sysdate, 'yyyy') - level + 1 years from dual connect by level ; /* 结果 YEARS 1 2018 2 2019 3 2020 */ --后年 -- eg 后...
  • Oracle数据库时间与字符串转换

    千次阅读 2015-09-22 14:08:15
    Oracle数据库时间与字符串转换    oracle时间与字符串转换 Year:   yy two digits 两位年 显示值:07   yyy three digits 三位年 显示值:007   yyyy four digits 四位年 显示值:2007   ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 64,909
精华内容 25,963
关键字:

oracle获取前几个字符