sql中decode()重要函数使用

同一列的不同行可能有不同的值,而且不是预先定义的。

,”

Decode函数在实际开发中非常的有用结合Lpad函数,如何使主键的值自动加1并在前面补0selectLPAD(decode(count(记录编号),0,1,max(to_number(记录编号)+1)),14,0)记录编号fromtetdmiseg:selectdecode(dir,1,0,1)froma1_intervaldir的值是1变为0,是0则变为1比如我要查询某班男生和女生的数量分别是多少?通常我们这么写:selectcount(*)from表where性别=男;selectcount(*)from表where性别=女;要想显示到一起还要union一下,太麻烦了用decode呢,只需要一句话selectsum(decode(性别,男,1,0)),sum(decode(性别,女,1,0))from表补充:同事遇到一个问题,分组的条件是动态变化的,比如:一组数据最多按A、B、C三种条件分组,但是根据情况这三个条件会动态的参与到分组中,有8中情况,例如:按null,按A,按B,按C,按A、B,按A、C,按B、C,按A、B、C。

decode()函数简介:主要作用:将查询结果翻译成其他值(即以其他形式表现出来,以下举例说明);使用方法:Selectdecode(columnname,值1,翻译值1,值2,翻译值2,…值n,翻译值n,缺省值)FromtalbenameWhere…其中columnname为要选择的table中所定义的column,·含义解释:decode(条件,值1,翻译值1,值2,翻译值2,…值n,翻译值n,缺省值)的理解如下:if(条件==值1)thenreturn(翻译值1)elsif(条件==值2)thenreturn(翻译值2)……elsif(条件==值n)thenreturn(翻译值n)elsereturn(缺省值)endifSQL中decode()函数的使用(2)*摘要:decode()函数是SQL中比较常见的函数,主要用于将查询结果翻译成其他值,下面将为您介绍SQL中decode()函数,供您参考。

最近在oracle数据操作时,遇见将一张表中的存的字典码转换成字典值的问题。