Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Phân nhóm SQL theo tháng và năm

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))

Hoặc như @ 40-Love đã đề cập, bạn có thể kết xuất với các số 0 ở đầu:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server:Lọc đầu ra của sp_who2

  2. Thêm mối quan hệ Khoá ngoại giữa hai Cơ sở dữ liệu

  3. SQL Server:Đặt tất cả các trường hợp UPPER thành trường hợp / trường hợp tiêu đề thích hợp

  4. Truyền mảng tới một thủ tục được lưu trữ trên máy chủ SQL

  5. Chuyển đổi đối tượng DateTime của SQL Server thành BIGINT (.Net tick)