sql >> Database teknologi >  >> RDS >> Sqlserver

SQL-gruppering efter måned og år

SELECT CAST(MONTH(date) AS VARCHAR(2)) + '-' + CAST(YEAR(date) AS VARCHAR(4)) AS Mjesec, SUM(marketingExpense) AS SumaMarketing, SUM(revenue) AS SumaZarada 
FROM [Order]
WHERE (idCustomer = 1) AND (date BETWEEN '2001-11-3' AND '2011-11-3')
GROUP BY CAST(MONTH(date) AS VARCHAR(2)) + '-' + CAST(YEAR(date) AS VARCHAR(4))

Eller som @40-Love nævnte, kan du caste med foranstillede nuller:

GROUP BY 
  CAST(YEAR(date) AS VARCHAR(4)) + '-' + right('00' + CAST(MONTH(date) AS VARCHAR(2)), 2) 


  1. Kombiner SQLite Count() med GROUP BY for at tilføje en "Count"-kolonne til dit resultatsæt

  2. Sådan forespørges en CLOB-kolonne i Oracle

  3. Sådan rettes den nye datatype, der forårsager problemer for MS Access

  4. MySQL:transaktion inden for en lagret procedure