繁体   English   中英

我将如何在MS Access查询中编写此代码?

[英]How would I write this in a MS Access query?

这就是我用C编写的方式。

if(x < 50 && x < 0.125y)
    {
    return 0;
    }
else if(x < 50 && x >= 0.125y)
    {
    if(z >= 2a)
        {
        return 50;
        }
    }
else return b;

这是我的尝试,只是一堆嵌套的ifs ...

IIf(([Est_Order_Qty]<50) And ([Est_Order_Qty]<0.125*[Quantity On Hand]),"0",IIf(([Est_Order_Qty]<50) And ([Est_Order_Qty]>=0.125*[Quantity On Hand]),IIf([Est_Order_Qty]<2*[Qty],"50",[Rounded_To_50])))
IIF((x < 50) AND (x < 0.125 * y), 0,
    IIF((x < 50) AND (x >= 0.125 * y) AND (z >= 2 * a), 50,
       b)

或尝试

IIf(([Est_Order_Qty] < 50) And 
    ([Est_Order_Qty] < 0.125 * [Quantity On Hand]), "0",
    IIf(([Est_Order_Qty] < 50) And 
        ([Est_Order_Qty] >= 0.125 * [Quantity On Hand]),
        IIf([Est_Order_Qty] < 2 * [Qty], "50", [Rounded_To_50]),
        [Rounded_To_50])
)

尝试切换

SWITCH(
x < 50 AND x < 0.125y, 0,
x < 50 AND x >= 0.125y AND z >= 2a, 50,
TRUE, b)

如果我正确地理解了您的if语句,那么我的答案就会是:

    iif(x < 50 And x > 0.125y, "0", iif(x < 50 And x >= 0.125y, iif(2 >= 2a, 50, ""), b))

我相信就是这样。 让我知道。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM