Vous avez ce que vous avez utilisé dans les procédures stockées comme ceci
pour référence, mais ils ne sont pas destinés à être utilisés comme vous le faites actuellement. Vous pouvez utiliser IF
comme indiqué par duskwuff
. Mais un Case
déclaration est meilleure pour les yeux. Comme ceci :
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;
Cela semble plus propre. Je suppose que vous n'avez pas besoin du SELECT
intérieur en tout cas..