zoukankan      html  css  js  c++  java
  • oracle经验小节2

    1,instr 函数

    在Oracle/PLSQL中,instr函数返回要截取的字符串在源字符串中的位置。

     语法如下:

    instr( string1, string2 [, start_position [, nth_appearance ] ] )

    string1:源字符串,要在此字符串中查找。

    string2:要在string1中查找的字符串

    start_position:代表string1的哪个位置开始查找。此参数可选,如果省略默认为1.

    字符串索引从1开始。如果此参数为正,从左到右开始检索,如果此参数为负,从右到左检索,返回要查找的字符串在源字符串中的开始索引。

    nth_appearance代表要查找第几次出现的string2.此参数可选,如果省略,默认为1.如果为负数系统会报错。

    举例说明:返回字符"j",在字符串"liuhongjia"中开始的索引,也就是第一次出现的位置。

    如果返回0表示不包含,否则表示包含。

    2,谈到oracle 系统函数,不得不说dual表,下面是引用相关的参考资料:dual是一个系统表,不能删除或者修改其表结构。它的名称叫做“伪表”或者“哑表”。查看其表结构:SQL> desc dual 名称  

    是否为空

    ?

    类型 ----------- -------- -----------

    DUMMY                VARCHAR2(1)

    其字段只有一个“dummy”,中文叫做“哑巴”。长度只有1。这个表结构只供参考。

    在Oracle中,使用dual的主要原因是为了计算表达式的值。表的操作只能是查询,其它如增删改或者修改表结构,都没有实际应用价值,不用研究。也可以一次性计算多个表达式的值:还有一个最常见的用途就是查询当前系统日期,·dual表主要用于计算表达式。 ·表结构只供参数,实际返回的列数与表达式的个数有关·dual表只有可能返回一行,不可能返回多行。因为dual表并不是从表中取数据。

    如上例中查找字符串中字符出现出现的位置,又如查系统日期:

    进行数学计算:

    3,oracle下划线转义

    用法如下图所示:

  • 相关阅读:
    2017-9-8-Linux下VNC server开启&图形界面显示
    2017-9-8-RaspberryPi安装过程
    2017-9-7-Linux Mint TFTP服务安装开启
    2017-9-7-第一篇博客
    面试回答优缺点问题
    多层板的层叠和压合结构
    磁珠和电感
    关于TVS、ESD、稳压二极管、压敏电阻
    STM8硬件设计注意事项
    根据电路板画出电路原理图的方法
  • 原文地址:https://www.cnblogs.com/langhua/p/3174488.html
Copyright © 2011-2022 走看看