• oracle 函数笔记


    substr()与substrb()
    区别在于对汉字的截取,一个汉字可能会占2个或3个字符,substr()截取的长度是指字符串的长度,substrb()截取的长度是指字符串所占字符的长度。
    例子如下:
    select substr('哈哈哈哈哈哈',1,6) from dual;
    哈哈哈哈哈哈
    select substrb('哈哈哈哈哈',1,6) from dual; --使用的库一个汉字是占3个字符,UTF-16
    哈哈
    select substr('123abc!@#$%^&*()',1,16) from dual;
    123abc!@#$%^&*()
    select substrb('123abc!@#$%^&*()',1,16) from dual;
    123abc!@#$%^&*()
     
     
     
    decode()
    格式为decode(expr,v_1,value_1,v_2,value_2,...,v_n,value_n,default),如果expr的值为v_1,则返回value_1;值为v_2,则返回value_2;如果在列表中没有与expr匹配上的值,则返回default。在这里,null值与null值视为等价。
    select decode(mod(10,3),1,'余1',2,'余2','整除') res from dual; --余1
    select decode(mod(11,3),1,'余1',2,'余2','整除') res from dual; --余2
    select decode(mod(12,3),1,'余1',2,'余2','整除') res from dual; --整除
     
     
     
    instr(str1,str2,i,j)
    返回str2在str1中第几次出现的位置,i表示搜索起始位置,i,j默认为1
    select instr('Moisossoppo','o') res1,instr('Moisossoppo','o',1,1) res2 from dual --i,j默认值为1
    2 2
    --i为负数时,表示从右向左搜索
    select instr('Moisossoppo','o',3,3) res1,instr('Moisossoppo','o',-2,3) res2,instr('Moisossoppo','o',-1,3) res3 from dual
    11 2 5
  • 相关阅读:
    论财务的意义
    项目忙乱的原因
    回家的路
    但问耕耘
    做自己的主角
    坚持的意义
    觉醒的意义
    梦想的力量
    把自己当作一件艺术品
    九宫格年度计划
  • 原文地址:https://www.cnblogs.com/simon-chan/p/3935664.html
Copyright © 2020-2023  润新知