MySQL根据根据条件求不同字段的和(SUM)

通过 case 来判断取哪个字段
例如 如果 cancel_flag =1 那么 使用 got_amount 的值 ,否则 gift_amount 的值

SELECT
    SUM(
        CASE cancel_flag
        WHEN 1 THEN
            IFNULL(got_amount, 0)
        ELSE
            IFNULL(gift_amount, 0)
        END
    )
FROM
    tcard_voucher_gift_record
WHERE
    card_id = 1

你可能感兴趣的:(MySQL根据根据条件求不同字段的和(SUM))