2017-03-18 65 views
1
SELECT price, sale, (IF(sale > 0) THEN ((price-sale)/price)*100 ELSE sale) AS discount FROM tbl_business_service_price 

需要解决这个问题,不想计算的百分比为100%时的销售价格为0.00我的SQL,如果其他条件

回答

0

试试这个..

SELECT price, sale, IF(sale > 0, (price-sale/price) * 100, sale) AS discount FROM tbl_business_service_price 
1

你有混合使用ifcase when语法,通常看一下官方doc,就可以得到你想要的。

if溶液:

SELECT 
    price, 
    sale, 
    IF(sale > 0, ((price - sale)/price) * 100, sale) AS discount 
FROM tbl_business_service_price 

case when溶液:

SELECT 
    price, 
    sale, 
    case when sale > 0 then ((price - sale)/price) * 100 else sale end AS discount 
FROM tbl_business_service_price