Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL IF ELSEIF nella query di selezione

Hai quello che hai usato nelle procedure memorizzate come questo per riferimento, ma non sono destinati ad essere utilizzati come hai ora. Puoi usare IF come mostrato da duskwuff . Ma un Case l'affermazione è migliore per gli occhi. In questo modo:

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;

Questo sembra più pulito. Suppongo che tu non richieda il SELECT interno comunque..