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

Hitung persentase pada bulan sebelumnya (tahun yang sama)

Anda dapat bergabung dengan kueri untuk dirinya sendiri pada jumlah bulan dikurangi 1. Kemudian Anda memiliki jumlah bulan dan bulan terakhir dalam satu baris dan dapat menghitung persentasenya. Mirip dengan berikut ini:

SELECT monthname(concat('1970-', lpad(A.MONTH, 2, '0'), '-01')) AS MONTH,
       A.SALE_PRICE,
       CASE
         WHEN A.SALE_PRICE IS NULL
           THEN NULL
         WHEN B.SALE_PRICE IS NULL
           THEN NULL
         WHEN A.SALE_PRICE = 0
           THEN NULL
         ELSE
           (B.SALE_PRICE / A.SALE_PRICE - 1) * 100
       END AS PERCENTAGE
       FROM (SELECT month(DATE_PURCHASED) AS MONTH,
                    sum(SALE_PRICE) AS SALE_PRICE,
                    FROM SALE
                    WHERE year(DATE_PURCHASED) = 2017
                    GROUP BY MONTH) A
            LEFT JOIN (SELECT month(DATE_PURCHASED) AS MONTH,
                              sum(SALE_PRICE) AS SALE_PRICE,
                              FROM SALE
                              WHERE year(DATE_PURCHASED) = 2017
                              GROUP BY MONTH) B
                      ON A.MONTH - 1 = B.MONTH
       ORDER BY A.MONTH;

Catatan A dan B menjadi kueri Anda, baru saja dimodifikasi sehingga bulannya berupa angka karena ini diperlukan di ON klausa.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jquery, drag and drop dan simpan ke database mysql?

  2. MySQL tidak akan membiarkan Login Pengguna:Kesalahan 1524

  3. Terjadi masalah saat memasukkan karakter / emoji UTF-8 4-Byte ke dalam Database MySQL saat pemicu penyisipan aktif

  4. Mysql:Menyimpan array data dalam satu kolom

  5. MySQL DELETE FROM dengan subquery UNION dengan kondisi IN