Sie haben das, was Sie verwendet haben, in gespeicherten Prozeduren wie hier
als Referenz, aber sie sind nicht dazu bestimmt, so verwendet zu werden, wie Sie es jetzt tun. Sie können IF verwenden wie von duskwuff gezeigt . Aber ein Case Aussage ist besser für die Augen. So:
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;
Das sieht sauberer aus. Ich nehme an, Sie benötigen das innere SELECT nicht sowieso..