`
len1267
  • 浏览: 14034 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
最近访客 更多访客>>
社区版块
存档分类
最新评论

case when && decode

SQL 
阅读更多
SELECT UPPER(CASE '&flag'
               WHEN '1' THEN
                'leo'
               WHEN '2' THEN
                'len'
               ELSE
                'paul'
             END             
             )
  FROM DUAL;

SELECT DECODE('&flag', '1', 'leo', '2', 'len', 'paul') FROM DUAL;
SELECT DECODE(CASE '&flag'
                WHEN '1' THEN
                 'leo'
                WHEN '2' THEN
                 'len'
                ELSE
                 'paul'
              END,
              'leo',
              'newname',
              'len',
              'oldname',
              'nonname')
  FROM DUAL;
分享到:
评论

相关推荐

    decode函数与case when 的妙用

    在数据库管理和SQL编程中,`DECODE`函数和`CASE WHEN`语句是两种非常重要的逻辑判断工具,它们常用于处理条件分支和数据转换。在这篇文章中,我们将深入探讨这两种方法的用途、区别以及如何巧妙地运用它们。 首先,...

    Oracle_case_when_用法

    `CASE WHEN` 与 `DECODE()` 函数相似,但因其符合 ANSI 标准而更受推荐使用。 #### 二、基本结构 `CASE WHEN` 语句的基本结构如下: ```sql CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ...

    Oracle-Decode()函数和CASE语句的比较

    Oracle数据库中的`Decode()`函数和`CASE`语句都是用于条件判断和数据转换的重要工具,它们各有特点,适用场景也有所不同。以下是对这两个功能的详细比较。 首先,`Decode()`函数是一个简化的条件表达式,它允许你在...

    Oracle用decode函数或CASE-WHEN实现自定义排序

    例如,当你需要按照特定顺序(如自定义的字母顺序或数值顺序)对非数字字段进行排序时,可以借助`DECODE`函数或`CASE-WHEN`语句来实现自定义排序。下面将详细介绍这两种方法。 1. **DECODE函数** Oracle的`DECODE`...

    oracle case when 语句的用法详解

    DECODE()函数是Oracle特有的,它可以作为CASE WHEN的替代品,但不支持复杂的条件: ```sql SELECT decode(sex, 'M', 'Male', 'F', 'Female', 'Unknown') FROM employees; ``` 尽管如此,DECODE()在某些情况下可能更...

    [数据库] Oracle使用CASE判断解决多值问题1

    为了简化这一过程,我们可以利用Oracle SQL的内置函数,如DECODE和CASE WHEN,直接在数据库层面进行处理。 首先,尝试使用DECODE函数。DECODE函数允许我们根据指定的条件返回不同的值。例如,DECODE(ZY_TYPE, '国家...

    oracle的decode函数

    - **高效性**:在某些情况下,`DECODE`函数可能比等效的`CASE WHEN`结构执行得更快。 ##### 注意事项: - **NULL处理**:需要注意的是,默认情况下,如果`input_value`为`NULL`,那么`DECODE`函数将返回`NULL`,...

    ORACLE 列转行 DECODE函数用法

    在实际工作中,你可能还需要结合其他SQL函数,如CASE WHEN或NVL,来进一步增强DECODE的功能。例如,当你需要处理可能的NULL值时,NVL函数可以提供一个默认值,防止因NULL而导致的结果异常。 总之,Oracle的DECODE...

    一道java面试题 行列转换

    SELECT @sql = @sql + ', [' + cid + '] = SUM(CASE cid WHEN ''' + cid + ''' THEN mark ELSE NULL END) ' FROM (SELECT DISTINCT cid FROM sc) AS sc1; -- 添加总分、平均分和最高分的计算语句 SET @sql = @sql +...

    mysql仿oracle的decode效果查询

    然而,MySQL 并没有内置的 `DECODE` 函数,但我们可以使用 `CASE WHEN` 语句来达到类似的效果。下面我们将详细探讨如何在 MySQL 中实现类似于 Oracle 的 `DECODE` 查询。 首先,让我们回顾一下 Oracle 中 `DECODE` ...

    ORACLE DECODE函数在中国式报表统计查询中的组合条件实现

    然而,在面对复杂的多条件组合统计需求时,`DECODE`函数的应用可能会变得相对繁琐,这时往往更倾向于使用`CASE WHEN`语句或创建视图的方法来解决。不过,如果出于特定原因需要坚持使用`DECODE`函数,那么了解如何...

    数据库基础 高级sql编程

    * Case 函数的语法结构:CASE expression WHEN value THEN result [WHEN value THEN result]* END * Decode 函数的语法结构:DECODE expression search result [search result]* * Case 与 Decode 的使用场景:数据...

    oracle sql 行列转换

    无论是使用CASE语句、DECODE函数还是PIVOT操作符,关键在于理解数据结构和转换需求,选择最合适的工具来实现转换。这些技能对于高效处理和分析复杂数据集至关重要,尤其是在IT行业中,掌握这些技能将大大提高数据...

    SQL学习笔记.docx

    CASE WHEN 函数的语法为 CASE WHEN condition THEN result [ WHEN condition THEN result ... ] ELSE result END,其中 condition 是条件,result 是执行的结果。 SIGN 函数 SIGN 函数是一个数学函数,用于返回一...

    SQL经典面试题及答案

    - `SUM(CASE WHEN shengfu = '胜' THEN 1 ELSE 0 END)` 这部分使用了`CASE`语句对每行数据进行判断,如果是“胜”则返回1,否则返回0。然后通过`SUM()`函数对所有1求和,从而得到“胜”的总数。 - 同样的逻辑也适用...

    常见sql语句

    下面是常见的SQL语句,包括NVL函数、Decode函数、Case函数、更改列标题、组合查询、整合性查询、复合性查询和update语句。 1. NVL函数: NVL函数是一个空值转换函数,用于将空值转换成实际值。其语法为NVL(表达式...

    SQL等价改写优化案例精选

    然而,通过巧妙运用`CASE WHEN`语句,可以将这些子查询合并为一个更加简洁高效的查询语句,从而减少表扫描次数,提升查询性能。 原始SQL: ```sql SELECT DISTINCT ne_state.peer_id peer_name, to_char(ne_state....

    行列转,换行列转换

    `DECODE`函数类似于`CASE WHEN`语句,但在某些情况下更加简洁易读。 - **`DECODE(sc.cname,'Ӣ',sco.score,NULL)`**:如果`sc.cname`等于`'Ӣ'`,则返回`sco.score`的值,否则返回`NULL`。 - **`AVG(DECODE(sc....

Global site tag (gtag.js) - Google Analytics