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

MySQL - sum kolonneværdi(er) baseret på række fra samme tabel

Jeg tror, ​​du gør det her lidt mere kompliceret, end det behøver at være.

SELECT
    ProductID,
    SUM(IF(PaymentMethod = 'Cash', Amount, 0)) AS 'Cash',
    -- snip
    SUM(Amount) AS Total
FROM
    Payments
WHERE
    SaleDate = '2012-02-10'
GROUP BY
    ProductID


  1. SQL Server-tabeller:hvad er forskellen mellem @, # og ##?

  2. Udjævning af krydsende tidsrum

  3. Kan du oprette et indeks i CREATE TABLE definitionen?

  4. Slå videnskabelig notation MySQL fra