程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了在SQL Server中执行嵌套case语句逻辑的最佳方法大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决在SQL Server中执行嵌套case语句逻辑的最佳方法?

开发过程中遇到在SQL Server中执行嵌套case语句逻辑的最佳方法的问题如何解决?下面主要结合日常开发的经验,给出你关于在SQL Server中执行嵌套case语句逻辑的最佳方法的解决方法建议,希望对你解决在SQL Server中执行嵌套case语句逻辑的最佳方法有所启发或帮助;

您可以尝试某种COALESCE技巧,例如:

SELECT COALESCE(
  CASE WHEN condition1 THEN calculation1 ELSE NulL END,
  CASE WHEN condition2 THEN calculation2 ELSE NulL END,
  etc...
)

解决方法

我正在编写一个SQL查询,其中需要根据相当多的条件来计算返回的一些列。

我目前正在使用嵌套的case语句,但是它变得凌乱。有没有更好(更有条理和/或更易读)的方法?

(我使用的是Microsoft SQL Server,2005)

一个简化的例子:

SELECT
    col1,col2,col3,CASE
        WHEN condition 
        THEN
            CASE
                WHEN condition1 
                THEN
                    CASE 
                        WHEN condition2
                        THEN calculation1
                        ELSE calculation2
                    END
                ELSE
                    CASE 
                        WHEN condition2
                        THEN calculation3
                        ELSE calculation4
                    END
            END
        ELSE 
            CASE 
                WHEN condition1 
                THEN 
                    CASE
                        WHEN condition2 
                        THEN calculation5
                        ELSE calculation6
                    END
                ELSE
                    CASE
                        WHEN condition2 
                        THEN calculation7
                        ELSE calculation8
                    END
            END            
    END AS 'calculatedcol1',col4,col5 -- etc
FROM table

大佬总结

以上是大佬教程为你收集整理的在SQL Server中执行嵌套case语句逻辑的最佳方法全部内容,希望文章能够帮你解决在SQL Server中执行嵌套case语句逻辑的最佳方法所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。