您好,请教高人oracle中decode的用法,例如下面的句子是什么意思呢?

例如 decode(substr(a.startdate,1,6),'200904',a.rowid)是什么意思

繁花不似锦
浏览 277回答 2
2回答

守着一只汪

decode(substr(a.startdate,1,6),'200904',a.rowid)什么意思?如果substr(a.startdate,1,6)=‘200904’,函数返回值为a.rowid;DECODE()函数解释:DECODE()函数,它将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式。当然,如果未能与任何一个实参序偶匹配成功,则函数也有默认的返回值。形象点儿,decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)该函数的含义如下:IF 条件=值1 THENRETURN(翻译值1)ELSIF 条件=值2 THENRETURN(翻译值2)......ELSIF 条件=值n THENRETURN(翻译值n)ELSERETURN(缺省值)END IF

明月笑刀无情

是只从a.startdate串中截取1到6这几个字符判断是不是200904如果是那么返回a.startdate的物理存储地址
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java
Oracle