1

我在表 a 中有数据,我想将其淬火并创建到另一个表 b 中。想知道如何做到这一点。我正在考虑做嵌套的 CASE 表达式。但这可行吗?

例如:-

表一:-

英格

-0.2 7888 99 90 9000 788 100 999 888

我想创建另一个表 b,这样做:-

选择 CASE WHEN S < 0 then (S+1/En-Eg)
ELSE (S-1/En-Eg)) END AS Z from a

我还想将 Z 与其他值进行比较:-

如果 z > 0 则为“好”,否则为“坏”

类似的东西,我也可以在表 b 内这样做吗?

4

1 回答 1

2

如果您在子查询中执行 CASE 表达式,则可以“重用”它:

SELECT z, CASE WHEN z > 0 THEN 'Good' ELSE 'Bad' END AS zdesc
FROM (
    SELECT CASE WHEN S < 0 
        THEN (S + 1 / En - Eg)
        ELSE (S - 1 / En - Eg) END AS z 
    FROM a
) b
于 2009-10-06T03:00:25.607 回答