oracle数据库关键字与语法-工作笔记(随时更新)

来源:互联网 发布:梁朝伟演技知乎 编辑:程序博客网 时间:2024/05/22 15:18
1、trim:用来去除一个字符串的开头或结尾(或两者)的字符。
    (1)如果指定leading参数,oracle数据库将去除任何等于trim_character的开头字符
            例:select trim(leading 'x' from 'xdylan') from dual;----dylan
    (2)traling:去除结尾字符
            例:select trim(traling 'x' from 'dylanx') from dual;----dylan
    (3)both,或者都不指定,去除开头和结尾的字符
            例:select trim(both 'x' from 'xdylanx') from dual;----dylan

2、replace(x, old, new):在x中查找old,并替换为new;

3、substr:截取字符串;

4、(1)add_months(d, n):在某一日期d上,加上指定的月数n,返回计算后的新日期。d表示日期,n表示要加的月数;
                例:select sysdate, add_months(sysdate, 5) from dual;----2009-8-28 10:50:33    2010-1-28 10:50:33
      (2)last_day(d):返回指定日期当月的最后一天;
                例:……----2009-8-28 10:50:33    2009-8-31 10:50:33

5、Round(d, fmt):返回一个以fmt为格式的四舍五入的日期值,d是日期,fmt是格式模型,默认为DDD,即月中的某一天;
    (1)如果fmt为’YEAR‘,则舍入到某年的一月一日,即前半年舍去,后半年作为下一年;
    (2)’MONTH‘,舍入到某月的一日,即前半月舍去,后半月作为下一月;
    (3)’DDD‘,月中的某一天,最靠近的天,前半天舍去,后半天作为第二天;
    (4)’DAY‘,舍入到最近的周的周日,即上半周舍去,下半周作为下周周日;
                例:select sysdate, round(sysdate), round(sysdate, 'DAY'), round(sysdate, 'MONTH'), round(sysdate, 'YEAR') from dual;
                        ----2009-8-11 21:05:53    2009-8-12……    2008-8-9……    2009-8-1……    2010-1-1    

6、Extract(fmt from d):提取日期中的特定部分
        例:select extract(YEAR from sysdate) from dual;----2016

7、字符串链接操作符(‘||’)

8、集合运算
        (1)intersect(交集),返回两个查询共有的记录
        (2)unionall(并集),返回各个查询的所有记录,包括重复的记录
        (3)union(并集),返回各个查询的所有记录,不包括重复的记录
        (4)minus(补集),返回第一个查询检索出的记录减去第二个查询检索出的记录之后剩余的记录

9、any:放在比较运算符后面,表示“任意”的意思
     all:与关系操作符一起使用,表示与子查询中所有元素比较

10、(1)concat(x, y):连接字符串
       (2)instr:查询字符出现的第一个位置下标
                例:select instr('system', 's') from dual;----1
       (3)length(x):返回x的长度
       (4)ltrim(x, y):按照y中的字符一个一个截掉x中的字符,并且是从左边开始执行的。只要遇到y中有的字符,x中的字符都会被截掉,直到在x的字符中遇到y中没有的字符为止,函数命令才结束。
                rtrim(x, y)
                    例:select ltrim('1090009430823', '109') from dual;----430923

11、nvl(x, value):如果x为空,返回value,否则返回x
       nvl2(x, value1, value2):如果x非空,则返回value1,否则返回value2

12、内置函数:greatestleast
            oracle比较一列的最大值和最小值,可用max和min函数
            oracle比较一行的最大值和最小值,可用greatest和least函数
        (1)greatest:返回列表中最大值(当有一个值为null,则返回null)
            例:select greatest(null, 'b', 'c') from dual;----null
                   select greatest( 'b', 'd', 'c') from dual;----d
        (2)least:返回列表中最小值(注:value值列表必须是相同的类型,要么全部数值,要么全部字符……)
                    例:select least('ab', 'ac', 'ad') from dual;----ab

13、coalesce:返回该表达式列表的第一个非空value
        例:select coalesce(null, 2, 3) from dual;----2
0 0
原创粉丝点击