gpt4 book ai didi

mysql - 将两个条件逻辑结果组合成一个 case 语句

转载 作者:行者123 更新时间:2023-11-29 01:02:28 24 4
gpt4 key购买 nike

我已经编写了一个查询以从数据库中选择销售值并应用折扣(如果有)。折扣要么是一个百分比,要么只是一个固定值。我的查询应用折扣(第一个 case 语句),然后提取应用的金额。

这让我想到是否有可能在一个案例陈述中完成这项工作。

查询:

SELECT
SUM(CASE
WHEN td.Transaction_ID IS NULL
THEN p.Sale
WHEN td.Transaction_ID IS NOT NULL AND d.Discount_Type = '0'
THEN p.Sale - (p.Sale * (dp.Discount_Percent/100))
ELSE
p.Sale - dv.Discount_Value
END) PriceDiscounted,
SUM(CASE
WHEN td.Transaction_ID IS NOT NULL AND d.Discount_Type = '0'
THEN (p.Sale * (dp.Discount_Percent/100))
WHEN td.Transaction_ID IS NOT NULL AND d.Discount_Type = '1'
THEN dv.Discount_Value
ELSE '0'
END) Discount

最佳答案

SELECT 中的 CASE 语句不是函数,只能返回一个值。您可以在存储过程中实现它,您可以在其中使用 CASE 或 IF THEN。

关于mysql - 将两个条件逻辑结果组合成一个 case 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2142829/

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