sql >> Databasteknik >  >> RDS >> Mysql

mySQL-fråga för att summera belopp i kolumner (månader)

Denna fråga bör ge dig önskat resultat.

SELECT category
  ,tran_type
  ,SUM(IF(month(date) = 1,ABS(amount),0)) as jan_total
  ,SUM(IF(month(date) = 2,ABS(amount),0)) as feb_total
  ,SUM(IF(month(date) = 3,ABS(amount),0)) as mar_total
  ,SUM(IF(month(date) = 4,ABS(amount),0)) as apr_total
  ,SUM(IF(month(date) = 5,ABS(amount),0)) as may_total
  ,SUM(IF(month(date) = 6,ABS(amount),0)) as jun_total
  ,SUM(IF(month(date) = 7,ABS(amount),0)) as jul_total
  ,SUM(IF(month(date) = 8,ABS(amount),0)) as aug_total
  ,SUM(IF(month(date) = 9,ABS(amount),0)) as sep_total
  ,SUM(IF(month(date) = 10,ABS(amount),0)) as okt_total
  ,SUM(IF(month(date) = 11,ABS(amount),0)) as nov_total
  ,SUM(IF(month(date) = 12,ABS(amount),0)) as dec_total
 FROM transactions
 WHERE YEAR(date) = '2011'
 GROUP BY category, tran_type

Glöm inte att filtrera på årtal om du inte vill råka ut för problem.



  1. Hur får man värdet från Javascript Prompt Box och skickar det till PHP-variabeln för att kunna spara i SQL?

  2. CASCADE DELETE bara en gång

  3. Introduktion till Failover för MySQL-replikering - 101-bloggen

  4. Hur man ser den faktiska Oracle SQL-satsen som körs