想要请教sql decode函数的一个简单用法,具体内容如下所示

执行如下sql:
select value from table where id=1

查询出来的值可能大于0也可能小于0。我现在想把小于0的结果全都改成0输入。这个用decode函数怎么做的?

好像是select decode(value...?) from table where id=1
select case when value<=0 then 0 else value end from table where id=1

那如果在一个查询语句中同时查询两个安段的情况应该怎么写呢?

比如:
select a,b from table,对b进行判断

饮歌长啸
浏览 253回答 3
3回答

繁花不似锦

首先decode函数是Oracle独有的判断函数!//其实就是一个简单的判断函数,比如字段的值为adecode(字段,'a','输出是a','是a','输出是b','否则输出都不是');&nbsp;//下面我拿EMP表的SCOTT来示例代码:SELECT&nbsp;&nbsp;&nbsp;&nbsp;DECODE(ename,'是SCOTT','Yes','不是SCOTT','No','都不是')FROM&nbsp;emp&nbsp;&nbsp;&nbsp;&nbsp;WHERE&nbsp;ename&nbsp;=&nbsp;UPPER('scott');

拉风的咖菲猫

首先decode函数是Oracle独有的判断函数!//其实就是一个简单的判断函数,比如字段的值为adecode(字段,'a','输出是a','是a','输出是b','否则输出都不是');//下面我拿EMP表的SCOTT来示例代码:SELECTDECODE(ename,'是SCOTT','Yes','不是SCOTT','No','都不是')FROM empWHERE ename = UPPER('scott');

繁星coding

不用这个函数也可以实现:select case when value<=0 then 0 else value end from table where id=1
打开App,查看更多内容
随时随地看视频慕课网APP