gpt4 book ai didi

mysql - 重复的CASE语句: Is there a more efficient way of writing this SQL statement?

转载 作者:行者123 更新时间:2023-11-29 15:25:27 25 4
gpt4 key购买 nike

我有一个 Excel 公式,需要在 MySQL 中重现,格式如下:MAX(IF(A=“”,B-C,B-D),0)基本上,如果内部 IF < 0,则返回零。

我将其写为:

IF ( CASE
WHEN A IS NULL
THEN B-C
ELSE B-D
END > 0,
CASE
WHEN A IS NULL
THEN B-C
ELSE B-D
END, 0 )

但是我不禁想到有一种更简单的写法,毕竟我在这里执行了两次 CASE 语句。我对 mySQL 很生疏,在我开始接触之前,我想知道编写此代码最高效的代码方式是什么

最佳答案

Basically if the inner IF is < 0 return zero.

按照这个,您可以简单地执行以下操作:

select greatest(b - d, 0)

不过,我不太确定您的代码(Excel 或 SQL 中的代码)与此语句有何关系。

关于mysql - 重复的CASE语句: Is there a more efficient way of writing this SQL statement?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59116632/

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