Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Melakukan penjumlahan yang cukup mendasar dengan tabel yang berbeda

Salah satu pendekatan adalah dengan menggunakan tampilan sebaris. Untuk melakukan ini

  • Buat kueri yang menjumlahkan poin yang diperoleh
  • Buat kueri yang menjumlahkan poin yang dihabiskan
  • Gabungkan kueri bersama (gabung kiri jika mereka belum membelanjakan apa pun)
  • Lakukan pengurangan


SELECT SumOfPointsEarned.Points - COALESCE(SumOfPointsOfPurchasesMade.Points, 0) AS CurrentPoints
FROM   
(
    SELECT SUM(Points) AS Points, Recipient_ID 
    FROM   transactions 
            WHERE Recipient_ID= 137642
    GROUP  BY Recipient_ID
) AS SumOfPointsEarned 
    LEFT JOIN 
    (
        SELECT purchases.Student_ID,  SUM(rewards.Cost_to_User) AS Points 
        FROM   purchases 
            INNER JOIN rewards 
            ON purchases.Reward_ID = rewards.Reward_ID 
                    WHERE Student_ID = 137642
        GROUP  BY purchases.Student_ID
    ) AS SumOfPointsOfPurchasesMade 
    ON SumOfPointsEarned.Recipient_ID = SumOfPointsOfPurchasesMade.Student_ID


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Referensi ke grup dalam regex MySQL?

  2. Bagaimana cara mengambil hasil dari baris MySQL dengan beberapa kolom dengan nama yang sama dengan PHP?

  3. Laravel 5.1 - Pesan dengan dua kolom tidak berfungsi sebagaimana mestinya

  4. Bagaimana saya bisa menggunakan jQuery untuk menjalankan kueri MySQL?

  5. data php dari database tidak ditampilkan setelah pencarian