zoukankan      html  css  js  c++  java
  • Oracle其他函数

    42.CHARTOROWID
    将字符数据类型转换为ROWID类型
    SQL> select rowid,rowidtochar(rowid),ename from scott.emp;
    ROWID ROWIDTOCHAR(ROWID) ENAME
    ------------------ ------------------ ----------
    AAAAfKAACAAAAEqAAA AAAAfKAACAAAAEqAAA SMITH
    AAAAfKAACAAAAEqAAB AAAAfKAACAAAAEqAAB ALLEN
    AAAAfKAACAAAAEqAAC AAAAfKAACAAAAEqAAC WARD
    AAAAfKAACAAAAEqAAD AAAAfKAACAAAAEqAAD JONES

    43.CONVERT(c,dset,sset)
    将源字符串 sset从一个语言字符集转换到另一个目的dset字符集
    SQL> select convert(’strutz’,’we8hp’,’f7dec’) "conversion" from dual;
    conver
    ------
    strutz

    44.HEXTORAW
    将一个十六进制构成的字符串转换为二进制

    45.RAWTOHEXT
    将一个二进制构成的字符串转换为十六进制

    46.ROWIDTOCHAR
    将ROWID数据类型转换为字符类型

    47.TO_CHAR(date,’format’)
    SQL> select to_char(sysdate,’yyyy/mm/dd hh24:mi:ss’) from dual;
    TO_CHAR(SYSDATE,’YY
    -------------------
    2004/05/09 21:14:41

    48.TO_DATE(string,’format’)
    将字符串转化为ORACLE中的一个日期

    49.TO_MULTI_BYTE
    将字符串中的单字节字符转化为多字节字符
    SQL> select to_multi_byte(’高’) from dual;
    TO
    --

    50.TO_NUMBER
    将给出的字符转换为数字
    SQL> select to_number(’1999’) year from dual;
    YEAR
    ---------
    1999

    51.BFILENAME(dir,file)
    指定一个外部二进制文件
    SQL>insert into file_tb1 values(bfilename(’lob_dir1’,’image1.gif’));

    52.CONVERT(’x’,’desc’,’source’)
    将x字段或变量的源source转换为desc
    SQL> select sid,serial#,username,decode(command,
    2 0,’none’,
    3 2,’insert’,
    4 3,
    5 ’select’,
    6 6,’update’,
    7 7,’delete’,
    8 8,’drop’,
    9 ’other’) cmd from v$session where type!=’background’;
    SID SERIAL# USERNAME CMD
    --------- --------- ------------------------------ ------
    1 1 none
    2 1 none
    3 1 none
    4 1 none
    5 1 none
    6 1 none
    7 1275 none
    8 1275 none
    9 20 GAO select
    10 40 GAO none

    53.DUMP(s,fmt,start,length)
    DUMP函数以fmt指定的内部数字格式返回一个VARCHAR2类型的值
    SQL> col global_name for a30
    SQL> col dump_string for a50
    SQL> set lin 200
    SQL> select global_name,dump(global_name,1017,8,5) dump_string from global_name;
    GLOBAL_NAME DUMP_STRING
    ------------------------------ --------------------------------------------------
    ORACLE.WORLD Typ=1 Len=12 CharacterSet=ZHS16GBK: W,O,R,L,D

    54.EMPTY_BLOB()和EMPTY_CLOB()
    这两个函数都是用来对大数据类型字段进行初始化操作的函数

    55.GREATEST
    返回一组表达式中的最大值,即比较字符的编码大小.
    SQL> select greatest(’AA’,’AB’,’AC’) from dual;
    GR
    --
    AC
    SQL> select greatest(’啊’,’安’,’天’) from dual;
    GR
    --

    56.LEAST
    返回一组表达式中的最小值
    SQL> select least(’啊’,’安’,’天’) from dual;
    LE
    --

    57.UID
    返回标识当前用户的唯一整数
    SQL> show user
    USER 为"GAO"
    SQL> select username,user_id from dba_users where user_id=uid;
    USERNAME USER_ID
    ------------------------------ ---------
    GAO 25

    58.USER
    返回当前用户的名字
    SQL> select user from dual;
    USER
    ------------------------------
    GAO

    59.USEREVN
    返回当前用户环境的信息,opt可以是:
    ENTRYID,SESSIONID,TERMINAL,ISDBA,LABLE,LANGUAGE,CLIENT_INFO,LANG,VSIZE
    ISDBA 查看当前用户是否是DBA如果是则返回true
    SQL> select userenv(’isdba’) from dual;
    USEREN
    ------
    FALSE
    SQL> select userenv(’isdba’) from dual;
    USEREN
    ------
    TRUE
    SESSION
    返回会话标志
    SQL> select userenv(’sessionid’) from dual;
    USERENV(’SESSIONID’)
    --------------------
    152
    ENTRYID
    返回会话人口标志
    SQL> select userenv(’entryid’) from dual;
    USERENV(’ENTRYID’)
    ------------------
    0
    INSTANCE
    返回当前INSTANCE的标志
    SQL> select userenv(’instance’) from dual;
    USERENV(’INSTANCE’)
    -------------------
    1
    LANGUAGE
    返回当前环境变量
    SQL> select userenv(’language’) from dual;
    USERENV(’LANGUAGE’)
    ----------------------------------------------------
    SIMPLIFIED CHINESE_CHINA.ZHS16GBK
    LANG
    返回当前环境的语言的缩写
    SQL> select userenv(’lang’) from dual;
    USERENV(’LANG’)
    ----------------------------------------------------
    ZHS
    TERMINAL
    返回用户的终端或机器的标志
    SQL> select userenv(’terminal’) from dual;
    USERENV(’TERMINA
    ----------------
    GAO
    VSIZE(X)
    返回X的大小(字节)数
    SQL> select vsize(user),user from dual;
    VSIZE(USER) USER
    ----------- ------------------------------
    6 SYSTEM


    60.AVG(DISTINCT|ALL)
    all表示对所有的值求平均值,distinct只对不同的值求平均值
    SQLWKS> create table table3(xm varchar(8),sal number(7,2));
    语句已处理。
    SQLWKS> insert into table3 values(’gao’,1111.11);
    SQLWKS> insert into table3 values(’gao’,1111.11);
    SQLWKS> insert into table3 values(’zhu’,5555.55);
    SQLWKS> commit;
    SQL> select avg(distinct sal) from gao.table3;
    AVG(DISTINCTSAL)
    ----------------
    3333.33
    SQL> select avg(all sal) from gao.table3;
    AVG(ALLSAL)
    -----------
    2592.59

    61.MAX(DISTINCT|ALL)
    求最大值,ALL表示对所有的值求最大值,DISTINCT表示对不同的值求最大值,相同的只取一次
    SQL> select max(distinct sal) from scott.emp;
    MAX(DISTINCTSAL)
    ----------------
    5000

    62.MIN(DISTINCT|ALL)
    求最小值,ALL表示对所有的值求最小值,DISTINCT表示对不同的值求最小值,相同的只取一次
    SQL> select min(all sal) from gao.table3;
    MIN(ALLSAL)
    -----------
    1111.11

    63.STDDEV(distinct|all)
    求标准差,ALL表示对所有的值求标准差,DISTINCT表示只对不同的值求标准差
    SQL> select stddev(sal) from scott.emp;
    STDDEV(SAL)
    -----------
    1182.5032
    SQL> select stddev(distinct sal) from scott.emp;
    STDDEV(DISTINCTSAL)
    -------------------
    1229.951

    64.VARIANCE(DISTINCT|ALL)
    求协方差
    SQL> select variance(sal) from scott.emp;
    VARIANCE(SAL)
    -------------
    1398313.9

    65.GROUP BY
    主要用来对一组数进行统计
    SQL> select deptno,count(*),sum(sal) from scott.emp group by deptno;
    DEPTNO COUNT(*) SUM(SAL)
    --------- --------- ---------
    10 3 8750
    20 5 10875
    30 6 9400

    66.HAVING
    对分组统计再加限制条件
    SQL> select deptno,count(*),sum(sal) from scott.emp group by deptno having count(*)>=5;
    DEPTNO COUNT(*) SUM(SAL)
    --------- --------- ---------
    20 5 10875
    30 6 9400
    SQL> select deptno,count(*),sum(sal) from scott.emp having count(*)>=5 group by deptno ;
    DEPTNO COUNT(*) SUM(SAL)
    --------- --------- ---------
    20 5 10875
    30 6 9400

    67.ORDER BY
    用于对查询到的结果进行排序输出
    SQL> select deptno,ename,sal from scott.emp order by deptno,sal desc;
    DEPTNO ENAME SAL
    --------- ---------- ---------
    10 KING 5000
    10 CLARK 2450
    10 MILLER 1300
    20 SCOTT 3000
    20 FORD 3000
    20 JONES 2975
    20 ADAMS 1100
    20 SMITH 800
    30 BLAKE 2850
    30 ALLEN 1600
    30 TURNER 1500
    30 WARD 1250
    30 MARTIN 1250
    30 JAMES 950


     

    申明

    非源创博文中的内容均收集自网上,若有侵权之处,请及时联络,我会在第一时间内删除.再次说声抱歉!!!

    博文欢迎转载,但请给出原文连接。

  • 相关阅读:
    chrome浏览页面常用快捷键 && 常见的HTTP状态码
    hasCode详解
    队例初始化问题(Queue)
    新手问题--双链表最后一个节点无法删除问题
    高级排序--快速排序
    高级排序--归并排序
    高级排序--希尔排序
    简单排序--插入排序
    简单排序--选择排序
    简单排序--冒泡排序
  • 原文地址:https://www.cnblogs.com/Athrun/p/1364116.html
Copyright © 2011-2022 走看看