使用时的情况

数据库的case when关键字,其实就是类似于if,else if,else的这一种格式,是获取判断条件的一种方式。在存储过程中和平时写的sql其语法格式是基

大家好,感谢邀请,今天来为大家分享一下使用时的情况的问题,以及和的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!

数据库的case when关键字实际上是类似于if、else if、else的格式,是一种获取判断条件的方式。

存储过程中编写的SQL的语法格式与平时编写的SQL基本相同,case when的用法和调用也相同。

第一个例子:

从ywda_swjg_qzh_dz 选择qzh

其中swjg=(

选择

substr(‘11101823000′),0,7)=’1110182’ 时的情况

然后substr(‘11101960000’,0,8) || ‘000’

else substr(‘1110196000’,0,7) || ‘0000’

结尾

来自ywda_swjg_qzh_dz 的swjgdm

其中a.swjg_dm=b.swjg_dm);

casewhen不仅可以用在查询结果中,还可以作为where条件之后的判断条件。

这个sql涵盖了这两种情况。当然,我们不需要在后面的where条件中添加select,例如:

从ywda_swjg_qzh_dz 选择qzh

其中swjg=

substr(‘11101823000′),0,7)=’1110182’ 时的情况

然后substr(‘11101960000’,0,8) || ‘000’

使用时的情况

else substr(‘1110196000’,0,7) || ‘0000’

结尾;

直接以这种格式使用案例肯定会更有效。

注意:case when 必须与then 和end 一起使用。

当然,我的存储过程不是这样写的。今天老板说我不用太负责,按照if和else的格式写就可以了。

存储过程的if和else格式与前后端使用的if和else格式有点不同。公司没有外部网络,纯手写。 Java代码我就不贴了,直接贴出部分存储过程。

如果substr(AVC_QXSWJG,0,8)=’11100006′ 或substr(AVC_QXSWJG,0,7)=’1110182′ 那么

从ywda_swjg_qzh_dz 选择qzh 到avc_qch,其中swjg_dm=substr(avc_qxswjg,0,8) || ‘000’;

elsif 条件(不带括号)然后

…sql 省略…….

别的

…sql省略… …………………………

结束如果;

sql结束。

注意,这里使用的逻辑运算符是SQL逻辑运算符,即and和or。

“||”上面写的是在字段后面追加一个字符串,而不是逻辑或,请注意。

if结束后,一定要加上end if,表示当前if的结束。

用户评论

使用时的情况
反正是我

对"CASE WHEN"的理解真是一大进步!看了这篇博文后我终于明白怎么用它灵活地处理条件判断了,以前总觉得这个功能有点神秘,现在想上手试试!

    有6位网友表示赞同!

使用时的情况
七夏i

这篇文章解释得非常清楚,案例也很贴近实际应用场景。之前一直不知道CASE WHEN这么强大,赶紧去学习一下!

    有18位网友表示赞同!

使用时的情况
有恃无恐

写的真棒,终于明白为什么别人总是用CASE WHEN来处理复杂的判断业务逻辑了!

    有5位网友表示赞同!

使用时的情况
她最好i

讲真,"CASE WHEN"这个语法本来就让我头疼,感觉太难理解了。这篇文章虽然解释得清楚,我还是觉得有点抽象,希望有更直观的案例可以参考。

    有7位网友表示赞同!

使用时的情况
苏樱凉

博主写的真的很到位,用通俗易懂的语言讲解了“CASE WHEN”的每一个细节!我之前 struggled 很久才学会这个用法,现在有了这篇文可供参考就好了!

    有11位网友表示赞同!

使用时的情况
孤城暮雨

其实我觉得"CASE WHEN"这种逻辑判断方式还是有些复杂,总感觉不如传统的if else语句直观。不过这篇文章确实让我对它有了一个更清晰的认识。

    有13位网友表示赞同!

使用时的情况
疯人疯语疯人愿

学习编程的过程真是不容易啊,这个"CASE WHEN"也给我整挺难了!还好这篇博文给了我一些启发,我现在至少明白了它的基本用法。

    有5位网友表示赞同!

使用时的情况
伪心

以前从来没用过 “CASE WHEN” ,觉得这东西太复杂了。看了这篇博文后感觉还可以,有兴趣尝试一下

    有19位网友表示赞同!

使用时的情况
神经兮兮°

这个案例分析很棒,让我直接明白CASE WHEN的使用场景和优势!真是学习的好方法!

    有9位网友表示赞同!

使用时的情况
此生一诺

文章写的简单易懂,但对于初学者来说,能否提供一些代码实例讲解更具体?比如:在实际项目中如何运用CASE WHEN来完成某个功能呢?

    有19位网友表示赞同!

使用时的情况
怅惘

博主解释"CASE WHEN "的用法非常仔细和详细,我读完之后感觉自己离能够熟练使用它就只差一点点!

    有7位网友表示赞同!

使用时的情况
一样剩余

这篇文章真的太棒了!终于明白为什么CASE WHEN会被广泛应用于数据库查询中,这种灵活的逻辑判断效率真是太高了!

    有13位网友表示赞同!

使用时的情况
单身i

文章讲解很透彻,案例也很有说服力。我现在对“CASE WHEN”这个语法有了更深刻的理解!

    有16位网友表示赞同!

使用时的情况
灵魂摆渡人

这篇文章让我解决了长期困扰的问题,我终于明白如何使用CASE WHEN来处理数据分类问题!以前总是手写的if else语句太长太复杂了!

    有9位网友表示赞同!

使用时的情况
如梦初醒

我一直觉得"CASE WHEN"这个语法有点绕口,但这篇博文用生动的例子解释得很清楚。原来它是这么实用强大的工具!

    有19位网友表示赞同!

使用时的情况
久爱不厌

文章写的简洁明了,关键是案例结合得很好,让我想起来之前自己写的代码中也能用到“CASE WHEN”,太棒啦!学习效率蹭蹭上涨!

    有13位网友表示赞同!

使用时的情况
∞◆暯小萱◆

觉得这篇博文很有帮助,可以把我之前对"CASE WHEN"的理解进一步提升。希望以后能看到更多实战案例!

    有5位网友表示赞同!

使用时的情况
我就是这样一个人

文章内容很实用,但希望能提供一些关于“CASE WHEN”性能优劣分析的内容,以便于我们更好地进行代码选型和优化。

    有12位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/119183.html

(0)
小su's avatar小su
上一篇 2024年9月1日 上午11:47
下一篇 2024年9月1日 上午11:50

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注