首页 > 解决方案 > SQL / Impala ,如何更快速高效地编写增加条件语句?

问题描述

我希望有人可以在这里帮助我。

我正在 impala 中写一个 CASE 来查找表格中遗漏的行。

但是,我需要将下面的示例编写为 WHEN 1000 = 999。与其编写 1000 行 CASE 行,是否有更高效、更快的解决方案需要更少的代码?这对我有很大帮助。谢谢你。

CASE WHEN dif_tradecount = 2 THEN 1
            WHEN dif_tradecount = 3 THEN 2
            WHEN dif_tradecount = 4 THEN 3
            WHEN dif_tradecount = 5 THEN 4
            WHEN dif_tradecount = 6 THEN 5
            WHEN dif_tradecount = 7 THEN 6
            WHEN dif_tradecount = 8 THEN 7
            WHEN dif_tradecount = 9 THEN 8
            WHEN dif_tradecount = 10 THEN 9
            WHEN dif_tradecount = 11 THEN 10
            WHEN dif_tradecount = 12 THEN 11 .....
            ELSE null
            END AS missed_messages    

标签: sqlimpala

解决方案


如果我的任务正确:

CASE
    WHEN dif_tradecount > 1 and dif_tradecount<=1000 THEN dif_tradecount-1
    ELSE null
END AS missed_messages    

推荐阅读