小编use*_*347的帖子

避免重复的 CASE 表达式

SELECT x, y, z,
CASE
WHEN COUNT (PH.header_id) OVER (PARTITION BY PL.header_id)
    NOT IN (null,0) THEN L_Count
ELSE COUNT (PH.header_id) OVER (PARTITION BY PL.header_id)
END as quantity
Run Code Online (Sandbox Code Playgroud)

有没有更有效的写法?

我非常清楚它在一张大桌子上执行了两次计数。

不幸的是,我无法发布查询计划,因为我正在使用的用户帐户正在等待 SHOWPLAN 权限。

NOT IN 子句是一个附带问题。感谢您提供有关改进方法的评论反馈,但问题的焦点是重复计数。

sql-server case query-performance

0
推荐指数
1
解决办法
792
查看次数

标签 统计

case ×1

query-performance ×1

sql-server ×1