`
huanglanfa
  • 浏览: 21282 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

decode在SQL中使用

 
阅读更多
select * from table1
where decode(nvl(变量1,''),1,name) =   (case when nvl(变量1,'') = '' then 1 else 变量1 end)
  and decode(nvl(变量2,''),1,sex)  =   (case when nvl(变量2,'') = '' then 1 else 变量2 end)

select * from table1
where decode(&变量1,'','0000',name) =   (case when nvl(&变量1,'') is null then '0001' else &变量1 end)
   or decode(&变量2,'','0000',sex)  =   (case when nvl(&变量2,'') is null then '0001' else &变量2 end)
   or (decode(&变量1,'','0000',name) =   (case when nvl(&变量1,'') is null then '0000' else &变量1 end)--当变量1,变量2都为空时,显示所有
       and decode(&变量2,'','0000',sex)  =   (case when nvl(&变量2,'') is null then '0000' else &变量2 end))
分享到:
评论

相关推荐

    关于decode函数的使用

    如果在`decode()`中使用`nvl()`函数,例如: ```sql SELECT monthid, DECODE(NVL(sale, 6000), 6000, 'NG', 'OK') FROM output; ``` - **`sign()`函数**:根据某个值是0、正数还是负数,分别返回0、1、-1。这在...

    SQL中 decode()函数简介

    DECODE函数,是ORACLE公司的SQL软件ORACLE PL/SQL所提供的特有函数计算方式,以其简洁的运算方式,可控的数据模型和灵活的格式转换而闻名。 今天看别人的SQL时看这里面还有decode()函数,以前从来没接触到,上网...

    SQL语句的DECODE和NVL

    在 SQL 语句中,DECODE 和 NVL 函数是两个非常重要和常用的函数,它们可以帮助我们实现复杂的逻辑判断和数据处理。本文将详细介绍 DECODE 和 NVL 函数的使用方法和实践应用。 一、DECODE 函数 DECODE 函数是 ...

    Oracle中Decode()函数使用技巧

    6. **在聚合函数中使用**: Decode()函数也可用于GROUP BY、HAVING和ORDER BY子句中,帮助对分组或排序进行条件判断。例如: ``` SELECT DECODE(column, 'value1', 'group1', 'value2', 'group2', 'other') AS ...

    SQL转换URL

    #### 二、SQL中的URL编码与解码函数 在Oracle数据库中,提供了`UTL_URL`包来支持URL编码与解码的功能。这个包包含了`ESCAPE`和`UNESCAPE`两个主要函数,分别用于URL编码与解码。 ##### 1. UTL_URL.ESCAPE 函数 **...

    SQLDecode.zip

    标题“SQLDecode.zip”暗示了这是一个与SQL解码或解析相关的项目,可能是一个工具或代码库,用于处理SQL Server中的存储过程。描述中提到“使用c# winform编写”,这表明该程序是一个基于C#语言的Windows桌面应用...

    Oracle中Decode()函数的有关用法

    它提供了一种简单的方法来实现多分支逻辑判断,尤其是在SQL查询中,能够避免使用复杂的流程控制语句如`IF-THEN-ELSE`等。 #### 二、基本语法与用法 `DECODE()`函数的基本语法如下: ```sql DECODE(value, if1, ...

    decode函数[归类].pdf

    DECODE函数是Oracle PL/SQL中的一个独特特性,它在软件开发,尤其是数据库查询中,提供了一种简洁而高效的方法来进行条件判断和数据转换。这个函数在Oracle SQL中扮演了if-then-else逻辑的角色,允许开发者在SQL查询...

    decode函数.docx

    decode 函数可以用在 SELECT 语句中,例如: ```sql SELECT SUM(DECODE(C810000125,'是',1,0))/COUNT(1) 合格率 FROM t581 ``` 这条语句统计了 C810000125 字段为“是”的记录数,并将其除以总记录数,得到合格率...

    关于oracle decode函数的用法

    Oracle的DECODE函数是一种条件表达式,用于在SQL语句中执行类似于IF...THEN...ELSE逻辑判断的功能。它根据一个指定的表达式的值,与一系列的条件进行比较,如果匹配到某个条件,则返回对应的值;如果没有匹配任何...

    查詢高消耗CPU的pid的SQL

    查詢高消耗CPU的pid的SQL,SELECT /*+ ...DECODE (sql_hash_value, 0, prev_sql_addr, sql_address) FROM v$session b WHERE b.paddr = (SELECT addr FROM v$process c WHERE c.spid = '&pid')) ORDER BY piece ASC

    DECODE解码代码

    DECODE函数提供了一种简洁的语法,使得在SQL查询中可以根据不同的条件返回不同的值,而无需使用复杂的CASE语句或者IF-THEN-ELSE逻辑。 DECODE函数的基本语法如下: ```sql DECODE(expression, value1, result1, ...

    ORACLE 列转行 DECODE函数用法

    在Oracle数据库中,DECODE函数是一个非常实用的工具,它允许你在SQL查询中进行条件判断,将特定的值转换为其他值。DECODE函数在处理列转行的问题时,尤其适用于将多列数据合并到一行中,使得数据展示更加简洁明了。...

    oracle_sql使用.docx

    首先,当你在查询中使用组函数如MAX时,根据SQL标准,所有非组函数的列都必须在GROUP BY子句中指定。这意味着如果你有一个SELECT语句,其中包含MAX函数,但没有在GROUP BY子句中包含其他列,你会收到错误。例如,...

    sqlserver-oracle 数据类型对照

    - `CURRVAL`和`NEXTVAL`在Oracle中处理序列,SQL Server中使用`IDENT_CURRENT`和`IDENTITY`属性。 - `NULLIF`在Oracle和SQL Server中用于比较并返回NULL。 - `UID`、`SUSER_ID`、`USER_ID`、`USER`、`CURRENT_...

    轻松实现Sql Server 2005下的Base64、MD5、SHA1算法函数

    在SQL Server 2005中,我们可以使用`VARBINARY`和`VARCHAR`数据类型结合内置函数来实现Base64编码与解码: 1. **Base64编码**: ```sql CREATE FUNCTION dbo.Base64Encode(@input VARCHAR(MAX)) RETURNS VARCHAR...

    使用Decode运算符.rar

    这个运算符在某些数据库系统,如Oracle和SQL Server中广泛使用,尤其在处理条件判断和简化查询逻辑时。在本教程中,我们将深入探讨 `Decode` 运算符的工作原理、语法以及它在实际应用中的作用。 1. **Decode运算符...

    decode 加入clickhouse库之后代码

    "decode"函数在数据库系统中通常用于解码或转换编码的数据。在ClickHouse中,`decode`函数可能被用来处理编码过的字符串,将其转化为原始格式。例如,如果你有一个用Base64或URL编码的数据字段,`decode`函数可以...

Global site tag (gtag.js) - Google Analytics