我有以下代码:
SELECT CASE WHEN (ACCT.NMAJORHCODE IN ('7','16')
AND DET_TYPE NOT IN ('ACR', 'ADR', 'CRN'))
OR (DET_TYPE IN ('ADR', 'CRN') AND CR.NMAJORHCODE < 4 AND ACCT.NTYPE NOT IN ('A', 'X'))
THEN -NL.DET_FINAL
ELSE NL.DET_FINAL
这将遍历十五个数据库。但是,其中一个数据库的业务规则略有不同,在上面的示例中,最后两行需要
THEN NL.DET_FINAL
ELSE -NL.DET_FINAL
即符号是相反的。
我怎样才能让我的 CASE 语句表现出我想要的样子?在英语中,当我到达 THEN 子句时,它将是“将数字设为负数,除非 DB_NAME() = 'Proteus' 在这种情况下将其设为正数”。
同样,ELSE 需要符号反转。
感谢您的阅读。