16.L:代表本地货币符,这个和区域有关。这个时候我们想来显示一下人民币的符号:¥

$ vi .bash_profile       ---写入如下内容:

export NLS_LANG='SIMPLIFIED CHINESE'_CHINA.AL32UTF8   ---修改成简体中文+地区+字符集

source .bash_profile       ---让环境变量生效

[oracle@oracle ~]$ sqlplus scott/tiger

SQL*Plus: Release 10.2.0.5. - Production on 星期五 8月  :: 

Copyright (c) , , Oracle.  All Rights Reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5. - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>---如果你是用x-shell或者putty远程连接linux的话,需要将你的客户端的字符集也改回来

17.TO_NUMBER:将一个字符串转化为数字

把十进制转换为十六进制:(to_char)

SQL> select to_char(,'xxx') from dual;

TO_CHAR(,'
------------
a

把十六进制转换为十进制:(to_number)

SQL> select to_number('a','xxx') from dual;

TO_NUMBER('A','XXX')
--------------------

18.日期的两位表示方式:RR和YY

SQL> select * from emp where hiredate=to_date('17-12-80','dd-mm-rr');

EMPNO ENAME  JOB         MGR HIREDATE              SAL       COMM DEPTNO
----- ------ --------- ----- ------------------- ----- ---------- ------
SMITH CLERK -- :: 日期的两位表示方式:RR和YY YY:始终与当前世纪一致 RR:得到的是与当前年最近的年份

 19.操作NULL值的函数

NVL(expr1, expr2)

如果expr1为null,则返回expr2,否则返回expr1

可以使用的数据类型是数字、日期、字符型.

数据类型必须能够匹配(expr1和expr2的类型必须要一致)

SQL> select ename ,comm,nvl(comm,) nvl from emp;

ENAME                    COMM    NVL
------------------------------ ---------- ----------
SMITH
ALLEN
WARD
JONES
MARTIN

20.NVL(expr1, expr2,expr2)

如果expr1非空,就返回expr2

如果expr1为空,就返回expr3

SQL> select ename,sal,comm,sal+comm,sal+nvl(comm,),nvl2(comm,'工资加奖金','纯工资') "收入类别" from emp;

ENAME    SAL       COMM   SAL+COMM SAL+NVL(COMM,) 收入类别
------ ----- ---------- ---------- --------------- ---------------
SMITH 纯工资
ALLEN 工资加奖金
WARD 工资加奖金
JONES 纯工资
MARTIN 工资加奖金
BLAKE 纯工资
CLARK 纯工资
SCOTT 纯工资
KING 纯工资
TURNER 工资加奖金
ADAMS 纯工资
JAMES 纯工资
FORD 纯工资
MILLER 纯工资

21.NULLIF(expr1,expr2)

如果expr1和expr2相同就返回空,否则返回expr1

SQL> select ename,nullif(ename,'KING') from emp;

ENAME  NULLIF(ENAME,'KING')
------ ------------------------------
SMITH SMITH
ALLEN ALLEN
WARD WARD
JONES JONES
MARTIN MARTIN
BLAKE BLAKE
CLARK CLARK
SCOTT SCOTT
KING
TURNER TURNER
ADAMS ADAMS
JAMES JAMES
FORD FORD
MILLER MILLER

22. COALESCE(expr1,expr2,expr3,…exprn):返回括号内第一个非空的值

23.条件表达式函数

decode与case when

区别:

1. decode是oracle自己的函数,case when是SQL99标准函数

2. decode只能进行等值判断,case when可以进行非等值判断

​SQL> select ename,job,case job when 'CLERK' then '1.clerk'
when 'SALESMAN' then '2.saleman'
else 'other' end
from emp ENAME JOB CASEJOBWHEN'CLERK'THEN'1.CL
------ --------- ---------------------------
SMITH CLERK .clerk
ALLEN SALESMAN .saleman
WARD SALESMAN .saleman
JONES MANAGER other
MARTIN SALESMAN .saleman
BLAKE MANAGER other
CLARK MANAGER other
SCOTT ANALYST other
KING PRESIDENT other
TURNER SALESMAN .saleman
ADAMS CLERK .clerk
JAMES CLERK .clerk
FORD ANALYST other
MILLER CLERK .clerk

decode用法实例

SQL> select ename,decode(job,'SALESMAN','CLERK','UNKNOWN') from emp;

ENAME  DECODE(JOB,'SALESMAN'
------ ---------------------
SMITH UNKNOWN
ALLEN CLERK
WARD CLERK
JONES UNKNOWN
MARTIN CLERK
BLAKE UNKNOWN
CLARK UNKNOWN
SCOTT UNKNOWN
KING UNKNOWN
TURNER CLERK
ADAMS UNKNOWN
JAMES UNKNOWN
FORD UNKNOWN
MILLER UNKNOWN

使用case when进行非等值判断:

SQL> select ename,sal,case when sal between  and  then
when sal between and then
when sal between and then
when sal between and then
else end grade from emp ENAME SAL GRADE
------ ---------- ----------
SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JAMES
FORD
MILLER

24.函数的嵌套

单行的函数可以嵌套到任何一个层次

嵌套函数的计算顺序——先计算深层嵌套,再计算浅层嵌套.

SQL> select ename,mgr,nvl(to_char(mgr),'no manager') from emp;

ENAME    MGR NVL(TO_CHAR(MGR),'NOMANAGER')
------ ----- ----------------------------------------
SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING no manager
TURNER
ADAMS
JAMES
FORD
MILLER

ORACLE SQL单行函数(三)【weber出品必属精品】的更多相关文章

  1. ORACLE SQL 组函数【weber出品必属精品】

    组函数:对一组数据进行加工,每组数据返回一个值 常用的组函数:count()  avg()  max()   min()  sum()   count()函数  1. count(*) :返回总共的行 ...

  2. 创建存储过程和函数【weber出品必属精品】

    一.什么是存储过程和函数 1. 是被命名的pl/sql块 2. 被称之为pl/sql子程序 3. 与匿名块类似,有块结构: 声明部分是可选的(没有declare关键字) 必须有执行部分 可选的异常处理 ...

  3. oracle数据库事务相关【weber出品必属精品】

    事务的概念:事务:一个事务由一组构成一个逻辑操作的DML语句组成 事务有开始有结束,事务以DML语句开始,以Conmmit和Rollback结束.以下情况会使得事务结束: 1. 执行COMMIT 或者 ...

  4. 全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】

    <ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入D ...

  5. 全世界最详细的图形化VMware中linux环境下oracle安装(一)【weber出品必属精品】

    安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装 ...

  6. ORACLE SQL单行函数(一)【weber出品必属精品】

    1.SUBSTR:求父串中的子串 SUBSTR('HelloWorld',1,5) 1:代表子串的起始位置,如果为正,正数,如果为负,倒数 5:代表字串的终止位置,只能向右数,可以省略,如果省略就是数 ...

  7. ORACLE SQL单行函数(二)【weber出品必属精品】

    11.dual:虚表,任何用户都可以使用,表结构如下: SQL> desc dual Name Null? Type -------------------------------------- ...

  8. 全世界最详细的图形化VMware中linux环境下oracle安装(三)【weber出品必属精品】

    数据库软件和数据库都建好了,基本上可以说完成90%的工作,但是美中不足的就是企业管理器还没有安装好,现在我们就开始安装企业管理器吧. 安装之前我们先将补丁给补上.补丁我们也是采用禁默安装.补丁:p83 ...

  9. 静默安装ORACLE【weber出品必属精品】

    安装配置系统环境安装linux ,所有服务都不选择,只是选择安装开发工具,不要安装防火墙(当然也可以在后面关闭) 打开终端,执行如下命令,检查安装包,没有的都要安装 make, glibc, liba ...

随机推荐

  1. 2、vs2012无法从模型更新到数据库的问题

    在模型设计视图空白处选择“从模型生成到数据库…”:不出意外的话应该是打开生成的脚本,当然也可能出现如下的错误,请下载最新的SQL Server Data Tool(我本地VS2012,数据库SQLSe ...

  2. 转: memcpy的用法总结

    1.memcpy 函数用于 把资源内存(src所指向的内存区域) 拷贝到目标内存(dest所指向的内存区域):拷贝多少个?有一个size变量控制拷贝的字节数:函数原型:void *memcpy(voi ...

  3. [flex & bison]编译器杂谈

    flex与bison是编译器设计工具.这里的编译器为广义,其中包括一般的编译器.脚本解析器等,需要进行语言结构解析来得出意义的程序. 当我们需要用一个语言来设计一款编译器时,需要考虑太多设计重心外的东 ...

  4. 电源VCC、VSS、VDD、VEE、VPP、Vddf标号的区别

    一.解释VCC:C=circuit表示电路的意思,即接入电路的电压: VDD:D=device表示器件的意思,即器件内部的工作电压:VEE:发射极电源电压,EmitterVoltage,一般用于ECL ...

  5. 自己动手做 UEStudio/UltraEdit 的语法高亮文件 (*.uew)

    自己一直比较习惯用 UEStudio 来编写 C/C++ 文件,因为 Visual Studio 2010 实在太大了,我的 T400 都跑的费劲,所以一般我只用它来编译和调试.但是可惜的是 UESt ...

  6. <frameset><frame><iframe>网页框架

    这几个标签都属于同一类功能,就是框架内镶功能: 1)<frameset>意为把页面分解成一定部分,让每一部分显示不同的内镶框架,如(请复制到DW尝试): <html> < ...

  7. -_-#【乱码】URL中文参数

    JavaScript利用URL向后台传入中文参数乱码问题解决之道! encodeURIComponent(encodeURIComponent('ya呀')) http://wap.baomihua. ...

  8. POJ Stockbroker Grapevine 1125 多源最短路(Floyd)

    题目大意: 股票经纪人要散播股票的谣言,每个人都有人际关系,每个人只信任他相信的人传播的谣言, 其实也就是有向图.问 哪个人能最快的将谣言传播给所有人,并且求出传过去的最短时间. 题目分析: 我们用F ...

  9. freemarker 时间格式化注意事项

    ${document.publishDate?string("yyyy-MM-dd")} 取出的是 2015-05-20 ${document.publishDate?string ...

  10. linux有用网址

    正则表达式在线测试 http://tool.oschina.net/regex