关闭

oracle decode函数,取两个日期中的较大值

2634人阅读 评论(0) 收藏 举报
分类:
decode(条件, 值1, 翻译值1, 值2, 翻译值2, ...值n, 翻译值n, 缺省值)
【功能】根据条件返回相应值【参数】c1, c2, ..., cn, 字符型 / 数值型 / 日期型,必须类型相同或null
注:值1……n 不能为条件表达式, 这种情况只能用case when then end解决·
含义解释:decode(条件, 值1, 翻译值1, 值2, 翻译值2, ...值n, 翻译值n, 缺省值)    
该函数的含义如下:    
IF 条件 = 值1 THEN  RETURN(翻译值1)  
ELSIF 条件 = 值2 THEN  RETURN(翻译值2)  ......  
ELSIF 条件 = 值n THEN  RETURN(翻译值n)    ELSE  RETURN(缺省值)  END IF  
或:  
when case 条件 = 值1 THEN  RETURN(翻译值1)  
ElseCase 条件 = 值2 THEN  RETURN(翻译值2)  ......  
ElseCase 条件 = 值n THEN  RETURN(翻译值n)    

ELSE  RETURN(缺省值)  END

sign(x)【功能】返回x的正负值【参数】x,数字型表达式【返回】数字,若为正值返回1,负值返回-1,0返回0

取两个日期中的较大值:

SELECT Decode(Sign(tb.KCCZRQ-SYSDATE),-1,SYSDATE,tb.KCCZRQ)  AS XFTS FROM tb


0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Oracle 取出多个字段列中的最大值和最小值

首先介绍两个函数: Oracle Least()函数 Oracle Greatest()函数
  • xunzaosiyecao
  • xunzaosiyecao
  • 2014-03-05 14:30
  • 3306

oracle取出多个字段列中的最大值和最小值

在Oracle 中除了Max,Min取最大值和最小值,还有两个函数比较实用。 greatest, least. SELECT least(1,2) FROM DUAL; LEAST(1,2) ...
  • zzx3q
  • zzx3q
  • 2013-01-05 11:54
  • 9605

Oracle 中返回最大值和返回前几个较大值(TOP10)问题一解

Oracle 中返回最大值和返回前几个较大值(TOP10)问题一解需返回最大的编号(主键)加1实现自己加操作1.使用触发器CREATE SEQUENCE seqmyTableSNO ;create t...
  • binglingshui
  • binglingshui
  • 2006-07-16 16:30
  • 2658

oracle中怎么比较两个日期的大小

再写代码时老是会遇到比较两个日期的大小问题,于是自己写了个方法,以备以后参考: //比较日期前后 function compareDate(DateOne,DateTwo) ...
  • Q1059081877Q
  • Q1059081877Q
  • 2015-07-15 20:59
  • 4189

DECODE和日期类型转换中出现的问题

--大于等于1950年的都没有问题(但这种写法是不合理的)insert into aa select decode(19500101,00000000,null,TO_DATE(19500101,yy...
  • huanghui22
  • huanghui22
  • 2007-01-23 15:30
  • 3059

Oracle比较两个数的大小

比较大小select decode(sign(变量1-变量2),-1,变量1,变量2) from dual; --取较小值sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1
  • hellostory
  • hellostory
  • 2009-12-15 10:35
  • 20010

Oracle比较时间大小

Sql代码   1,比较当前时间与指定时间相差分钟数:      select sysdate,   sysdate - to_date('2007-04-03&...
  • LXB15959168136
  • LXB15959168136
  • 2016-04-11 14:56
  • 674

Oracle SQL日期比较

 需要to_date函数把常量转换成日期 select * from TBL_STUDENT where LAST_UPDATE_TIME 如果输入库里的时间不是24小时的,是带am,...
  • aspnet2002web
  • aspnet2002web
  • 2016-05-31 10:23
  • 1976

oracle时间大小比较 格式

createtime >to_date( '2006-04-08 00:00:01','yyyy-mm-dd hh24:mi:ss')  and createtime 或者 crea...
  • zdwzzu2006
  • zdwzzu2006
  • 2013-07-11 15:19
  • 4600

oracle 获取最大日期记录

SELECT * FROM table T WHERE NOT EXISTS (SELECT 1 FROM table T1 WHERE TRUNC(T1.CREATEDATE) > TRUNC(T....
  • macfac
  • macfac
  • 2015-12-18 15:56
  • 1267
    个人资料
    • 访问:62251次
    • 积分:1895
    • 等级:
    • 排名:千里之外
    • 原创:129篇
    • 转载:3篇
    • 译文:5篇
    • 评论:6条
    文章分类
    最新评论