gpt4 book ai didi

sql - 公式买三送一

转载 作者:行者123 更新时间:2023-12-01 12:18:16 25 4
gpt4 key购买 nike

我正在尝试编写 PL/SQL 来获取如果您购买了一定数量的商品您需要支付多少钱。如果您购买 3 件商品,您将免费获得 1 件。

因此,每购买 4 件商品,其中一件免费。这意味着如果“购买”了 4 件商品,我将支付 3 件商品的费用。如果达到 10 项,则应支付 8 项,免费 2 项。

p-b     v_p
*** ***
1 1 = 1
2 2 = 2
3 3 = 3
4 3(1) = 3
5 3(1) + 1 = 4
6 3(1) + 2 = 5
7 3(1) + 3 = 6
8 3(1) + 3(1) = 6
9 3(1) + 3(1) + 1 = 7
10 3(1) + 3(1) + 2 = 8
11 3(1) + 3(1) + 3 = 9
12 3(1) + 3(1) + 3(1) = 9

我有

trunc(p-b / 3 * 2.4); 

但我的值(value)观不一致。

有时它适用于

trunc(p-b / 3 * 2.25); 

我的公式有误吗?我应该使用 trunc 或 mod。

最佳答案

要计算付费/免费内容的数量:

DECLARE
nAmount NUMBER := '10';
nPay NUMBER;
nFree NUMBER;
BEGIN
nPay := nAmount - TRUNC(nAmount / 4);
nFree := TRUNC(nAmount / 4);
DBMS_OUTPUT.PUT_LINE('Pay: ' || nPay);
DBMS_OUTPUT.PUT_LINE('Free: ' || nFree);
END;
/

关于sql - 公式买三送一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46521608/

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