- 浏览: 99152 次
- 性别:
- 来自: 无锡
文章分类
最新评论
//decode(字段或字段的运算,值1,值2,值3) 这个函数运行的结果是,当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3 当然值1,值2,值3也可以是表达式,这个函数使得某些sql语句简单了许多 //1、比较大小 select decode(sign(变量1-变量2),-1,变量1,变量2) from dual; --取较小值 sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1 例如: 变量1=10,变量2=20 则sign(变量1-变量2)返回-1,decode解码结果为“变量1”,达到了取较小值的目的。 //结合Lpad函数(Left pad 左填充lpad(字段名,填充长度,填充的字符) ), 如何使主键的值自动加1并在前面补0 select LPAD(decode(count(记录编号),0,1,max(to_number(记录编号)+1)),14,'0') 记录编号 from tetdmis 比如我要查询某班男生和女生的数量分别是多少? 通常我们这么写: select count(*) from 表 where 性别 = 男; select count(*) from 表 where 性别 = 女; 要想显示到一起还要union一下,太麻烦了 用decode呢,只需要一句话 //select sum(decode(性别,男,1,0)),sum(decode(性别,女,1,0)) from 表
发表评论
-
LISTAGG
2019-01-09 15:52 0select LISTAGG(i.coverage_name, ... -
sql改变字段类型
2018-08-22 18:08 1439https://blog.csdn.net/cai709557 ... -
Mybatis #{}和${} 区别
2018-07-25 13:16 419一般${}用在我们能够确定值的地方,也就是我们程序员自己赋值的 ... -
ORA-04063解决方法
2018-02-05 18:02 1619select * from dba_objects where ... -
Oracle不等号与Null的关系, 查询结果不包含null
2017-11-08 17:25 880遇到查询问题, 写SQL当where status =! 'Y ... -
SQL查询表中重复数据
2017-10-30 12:01 715SQL查询重复数据 有例 ... -
Mysql修改重置密码
2017-09-19 09:47 599http://blog.csdn.net/Jiang_Rong ... -
什么是BOM头
2017-03-17 14:42 625类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编 ... -
Oracle trunc()函数的用法
2017-01-09 18:16 398--Oracle trunc()函数的用法 /******* ... -
select 1 from dual中 1 的含义
2017-01-09 16:47 738//select 1 from table; //selec ... -
oracle NVL()函数 空值转换
2016-11-03 12:13 452一NVL函数是一个空值转换函数 NVL(表达式1,表达式 ... -
提示ORA-00904: "字段名": 标识符无效
2016-11-01 15:41 620提示ORA-00904: "表名" &qu ... -
sql筛选一条记录同时满足一个字段不等于10另一个不等于20
2016-10-28 16:05 895select * from t_user where not ... -
cmd下sqlplus登陆常用命令(转)
2016-10-11 14:57 574sqlplus + 数据库名字+@。 ... -
oracle update时间格式值
2016-09-26 18:04 852目的:需要将时间更改为 9/13/2016 9:00:00 A ... -
转义字符 & ' ora 01756 引号内字符串没有正确结束(字符串中包含')
2016-09-15 14:42 9681:' oracle中update的时候,字符串中为'it's ... -
PLSQL查询分类组中的每一组最大值的一条记录
2016-09-05 17:37 2823//根据object_id分组,每组中,取survey_id最 ... -
PLSQL用spool导出CSV数据command
2016-08-19 09:47 2636set pages 5000 set lines 2000 ... -
Oracle SQL 两列合并为一列,并且可以自定义添加一些字符
2016-08-17 14:13 1025//表t_clm_case下claim_no列,与表t_clm ... -
SQL语句替代变量&
2016-04-11 11:14 1194在SQL*Plus中默认的"&"表 ...
相关推荐
### 关于decode函数的使用详解 #### 函数概述 `decode()`函数在SQL语言中是一种常用的条件函数,它可以根据指定的表达式返回不同的值。这种功能对于数据转换、分类统计等场景非常有用。 #### 主要作用 `decode()`...
SELECT DECODE(SIGN(变量1-变量2),-1,变量1,变量2) FROM dual; ``` 这条语句比较变量1和变量2的大小,并返回较小的那个值。 decode 函数也可以与其他函数结合使用,例如 LPAD 函数,可以实现一些复杂的字符串处理...
select decode(sign(salary - 8000), >=0, salary*1.15, , salary*1.2, salary) from employee 这比使用 if-then-else 语句或 choose case 语句要简洁得多。 DECODE 函数的应用非常广泛,例如,在 Oracle 系统中就...
【DECODE函数详解】 DECODE函数是Oracle PL/SQL中的一个独特特性,它在软件开发,尤其是数据库查询中,提供了一种简洁而高效的方法来进行条件判断和数据转换。这个函数在Oracle SQL中扮演了if-then-else逻辑的角色...
Decode函数是Oracle数据库中用于实现条件逻辑的一个内置函数,它类似于编程语言中的switch-case语句或if-then-else语句。Decode函数可以对给定的表达式进行多个条件判断,并返回匹配条件的相应值。Decode函数广泛...
在这个例子中,`SIGN`函数用于检查变量1和变量2之间的关系,如果变量1小于变量2,则返回-1,DECODE函数会返回变量1;反之,如果变量1大于或等于变量2,函数将返回变量2。 此外,DECODE函数常用于简化SQL查询中的...
`DECODE()`函数可以结合其他函数一起使用,例如`SIGN()`函数,以实现比较两个数值的大小。 ```sql SELECT DECODE(SIGN(变量1 - 变量2), -1, 变量1, 变量2) FROM dual; ``` 这里,`SIGN(变量1 - 变量2)`用于比较两...
`DECODE`函数可以结合`SIGN`函数来比较两个值的大小。`SIGN`函数返回一个整数值,表示其参数与0的关系:0表示相等,1表示正数,-1表示负数。 示例: ```sql SELECT DECODE(SIGN(var1 - var2), -1, var1, var2)...
这里的`SIGN`函数用于判断两个变量的大小关系,如果`变量1`小于`变量2`,`SIGN`函数返回-1,`DECODE`函数返回`变量1`,反之返回`变量2`。 2. **简化SQL查询**:在SQL语句中,`DECODE`可以替代复杂的IF-THEN-ELSE...
`Decode()`函数相当于一个简单的`switch`语句,根据`SIGN(5 – 5)`的结果返回相应的字符串。 相比之下,`CASE`语句提供了一种更灵活和可扩展的方式来处理条件判断。它可以处理更复杂的逻辑,包括多种条件的组合和...
DECODE函数也可以与其他函数结合使用,例如NVL和SIGN函数。NVL函数用于处理NULL值,如果`EXPR1`是NULL,NVL函数会返回`EXPR2`的值,否则返回`EXPR1`的值。在DECODE函数中,我们可以这样使用NVL: ```sql SELECT ...
本文主要探讨了Oracle中的一些常用函数,并通过实例解析了它们的基本用法,特别介绍了DECODE函数的使用技巧。 首先,我们来看数字函数。在Oracle中,ABS(x)函数用于计算数值的绝对值,例如ABS(-10)返回10。CEIL(x)...
DECODE函数是Oracle中的一个条件分支函数,它的功能类似于编程语言中的if-else if-else语句。DECODE函数的格式为: ``` DECODE(字段或表达式, 值1, 结果1, 值2, 结果2, ... , 默认结果) ``` 如果字段或表达式的值...
Oracle的Decode()函数是PL/SQL中的一个非常实用的工具,尤其对于简化SQL查询和处理逻辑判断具有显著的优势。此函数允许我们在不使用复杂的IF-THEN-ELSE或CASE语句的情况下,实现条件判断和值的转换。由于Oracle是...
1. **DECODE函数**:DECODE函数在查询中用于条件判断和返回值替换。其基本语法为`DECODE(expression, value1, result1, value2, result2, ..., default_result)`。如果`expression`等于`value1`,则返回`result1`;...