oracle常用函数

一般的to_char是这样用的to_char(sysdate,'YYYY-MM-DD hh:mi:ss AM') ,也有几个图书点的用法

to_char(sysdate, 'dd') 查看今天是几号

to_char(sysdate, 'ww') 查看这是这个月第几个星期

to_char(sysdate, 'mm') 查看这是一年中第几个月

to_char(sysdate, 'yyyy') 查看年份

last_day(to_date('2007-02-01','YYYY-MM-DD'))查看一个月的最后一天,add_months(sysdate,10)查看若干个月后的今天,next_day(sysdate,'星期五')给个日期查看后面的最近的星期几的日期,不过这个星期五要是换成英文居然有问题,第2个参数可以是数字1-7,分别表示周日到周六。

下面贴个全的,需要的时候顺便查一下

PL/SQL单行函数和组函数详解

函数是一种有零个或多个参数并且有一个返回值的程序。在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行函数; 组函数

本文将讨论如何利用单行函数以及使用规则。SQL中的单行函数

SQL和PL/SQL中自带很多类型的函数,有字符、数字、日期、转换、和混合型等多种函数用于处理单行数据,因此这些都可被统称为单行函数。这些函数均可用于SELECT,WHERE、ORDER BY等子句中,例如下面的例子中就包含了TO_CHAR,UPPER,SOUNDEX等单行函数。

SELECT ename,TO_CHAR(hiredate,'day,DD-Mon-YYYY')FROM empWhere UPPER(ename) Like 'AL%'ORDER BY SOUNDEX(ename)

单行函数也可以在其他语句中使用,如update的SET子句,INSERT的VALUES子句,DELET的WHERE子句,认证考试特别注意在SELECT语句中使用这些函数,所以我们的注意力也集中在SELECT语句中。

NULL和单行函数

在如何理解NULL上开始是很困难的,就算是一个很有经验的人依然对此感到困惑。NULL值表示一个未知数据或者一个空值,算术操作符的任何一个操作数为NULL值,结果均为提个NULL值,这个规则也适合很多函数,只有CONCAT,DECODE,DUMP,NVL,REPLACE在调用了NULL参数时能够返回非NULL值。在这些中NVL函数时最重要的,因为他能直接处理NULL值,NVL有两个参数:NVL(x1,x2),x1和x2都式表达式,当x1为null时返回X2,否则返回x1。

下面我们看看emp数据表它包含了薪水、奖金两项,需要计算总的补偿

column name emp_id salary bonuskey type pk nulls/unique nn,u nnfk table datatype number number numberlength 11.2 11.2

不是简单的将薪水和奖金加起来就可以了,如果某一行是null值那么结果就将是null,比如下面的例子:

update empset salary=(salary+bonus)*1.1

这个语句中,雇员的工资和奖金都将更新为一个新的值,但是如果没有奖金,即 salary + null,那么就会得出错误的结论,这个时候就要使用nvl函数来排除null值的影响。

所以正确的语句是:

update empset salary=(salary+nvl(bonus,0)*1.1

时间: 2024-11-01 22:48:54

oracle常用函数的相关文章

ORACLE 常用函数——聚合函数

/**************************************************************************************************************************                                        ORACLE 常用函数                                                 这个系列我将整理一些日常我们经常使用到的ORACLE函

oracle常用函数汇总

以下是对oracle中的常用函数进行了汇总介绍,需要的朋友可以过来参考下   一.运算符算术运算符:+ - * / 可以在select 语句中使用 连接运算符:|| select deptno|| dname from dept; 比较运算符:> >= = != < <= like between is null in 逻辑运算符:not and or 集合运算符: intersect ,union, union all, minus 要求:对应集合的列数和数据类型相同     

Oracle 常用函数

1.Oracle Least()函数 2.Oracle Greatest()函数 3.EXTRACT (datetime) 4.SUBSTR函数 5.

oracle常用函数汇总(分享)_oracle

一.运算符算术运算符:+ - * / 可以在select 语句中使用连接运算符:|| select deptno|| dname from dept; 比较运算符:> >= = != < <= like between is null in逻辑运算符:not and or 集合运算符: intersect ,union, union all, minus 要求:对应集合的列数和数据类型相同     查询中不能包含long 列     列的标签是第一个集合的标签     使用orde

SQLServer和Oracle常用函数对比

oracle|server|sqlserver|函数 数学函数 1.绝对值 S:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) S:select ceiling(-1.001) value O:select ceil(-1.001) value from dual 3.取整(小) S:select floor(-1.001) value O:select floor(-1.001) value from dual 4.取

ORACLE 常用函数——转换函数

------------------------------------------类型转换函数---------------------------------------------- --自动类型转换, ORACLE 可以自动根据具体情况进行如下转换: *字符串到数值 *字符串到日期 *数值到字符串 *日期到字符串 EX: --*字符串到数值 SELECT '3.14159' + 20 FROM DUAL; SELECT '3.1T' + 20 FROM DUAL; --报错:无效数字,即

ORACLE 常用函数——字符函数

-----------------------------------------------字符函数--------------------------------------------- --1: ASCII 返回字符串的ASCII值 SELECT ASCII('A') FROM DUAL; SELECT ASCII('a') FROM DUAL; --2: CHR 返回整数所对应的ASCII字符 SELECT CHR('65') FROM DUAL; SELECT CHR(400) FR

SQLServer与Oracle常用函数实例对比汇总_数据库其它

一.数学函数 1.绝对值 复制代码 代码如下: S:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) 复制代码 代码如下: S:select ceiling(-1.001) value O:select ceil(-1.001) value from dual 3.取整(小) 复制代码 代码如下: S:select floor(-1.001) value O:select floor(-1.001) value from

oracle常用函数总结

.SYSDATE     用来得到系统的当前日期     SQL> select to_char(sysdate,dd-mm-yyyy day) from dual;     TO_CHAR(SYSDATE,   -----------------     09-05-2004星期日     trunc(date,fmt)按照给出的要求将日期截断,如果fmt=mi表示保留分,截断秒SQL> select to_char(trunc(sysdate,hh),yyyy.mm.dd hh24:mi: