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

menampilkan satu kolom beberapa kali dengan data dari 3 interval tanggal yang berbeda

Anda dapat menggunakan yang berikut ini - yang menggunakan fungsi agregat dengan CASE pernyataan:

select p.name,
  v.v_name,
  sum(case when Month(py.pay_date) = 4 then amount end) april_amount,
  sum(case when Month(py.pay_date) = Month(curdate())
        then amount end) current_month_amount,
  sum(case when Month(py.pay_date) = Month(curdate())-1
        then amount end) previous_month_amount
from persons p
left join vehicle v
  on p.id = v.person_veh
left join payment py
  on p.id = py.person_id
group by p.name,
  v.v_name

lihat SQL Fiddle dengan Demo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Mengonversi String ke Heksadesimal di MySQL – HEX()

  2. Optimalkan permintaan MySQL untuk menghindari Menggunakan di mana; Menggunakan sementara; Menggunakan filesort

  3. PHPExcel Render tag html di baris tabel mysql

  4. Permintaan MySQL - temukan pengguna baru setiap hari

  5. Cara mengatur AUTO_INCREMENT dari tabel lain