gpt4 book ai didi

选择查询中的 MySQL IF ELSEIF

转载 作者:IT老高 更新时间:2023-10-28 12:53:59 28 4
gpt4 key购买 nike

我正在尝试根据用户选择的数量为产品选择不同的价格。这是我正在处理的查询(它有语法错误):

 select id, 
(SELECT
IF(qty_1<='23',price,1)
ELSEIF(('23'>qty_1 && qty_2<='23'),price_2,1)
ELSEIF(('23'>qty_2 && qty_3<='23'),price_3,1)
ELSEIF('23'>qty_3,price_4,1)
END IF) as total
from product;

最佳答案

你有你在存储过程中使用过的东西like this供引用,但它们不打算像你现在那样使用。您可以使用 IF,如 duskwuff 所示。但是 Case 语句更适合眼睛。像这样:

select id, 
(
CASE
WHEN qty_1 <= '23' THEN price
WHEN '23' > qty_1 && qty_2 <= '23' THEN price_2
WHEN '23' > qty_2 && qty_3 <= '23' THEN price_3
WHEN '23' > qty_3 THEN price_4
ELSE 1
END) AS total
from product;

这看起来更干净。我想你不需要内部 SELECT 反正..

关于选择查询中的 MySQL IF ELSEIF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13887616/

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