gpt4 book ai didi

oracle - ORACLE 上的 IF ELSE 条件

转载 作者:行者123 更新时间:2023-12-02 06:39:38 24 4
gpt4 key购买 nike

我正在尝试在 Oracle 上发出 sql 请求,但遇到了一些问题。我有这句话要翻译,但我不知道如何翻译..你能帮我吗?我该如何翻译它? :(

IF(CODE="fuu")
THEN(SELECT bar FROM TABLE)
ELSE(we return 0)

感谢您的建议。

编辑:

我的要求是这样的

SELECT distinct
A, B, C, D, E,
SUM(F+G+H) AS "FGH",
SUM(I -(FGH)) AS "I",
CASE WHEN code='fuu' THEN bar ELSE 0 END AS AS "What I need"
FROM
TABLE
WHERE
A=20
GROUP BY
A, B, C, D, E;

这个解决方案有效,但我没有好的答案。实际上应该是 A=20 -> bar = 7598 而不是 0;

最佳答案

SQL 中的 case 表达式相当于其他语言中的 IF 语句:

CASE WHEN condition THEN value1 [ ELSE value2 ] END

我猜您正在寻找这样的东西:

SELECT distinct
A, B, C, D, E,
SUM(F+G+H) AS "FGH",
SUM(I -(FGH)) AS "I",
CASE WHEN CODE='fuu' THEN bar ELSE 0 END As "What I need"
FROM
TABLE
WHERE
A=20
GROUP BY
A, B, C, D, E, "What I need"

关于oracle - ORACLE 上的 IF ELSE 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21935506/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com