Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Grup SQL Server berdasarkan Hitungan DateTime Per Jam?

Bagaimana dengan ini? Dengan asumsi SQL Server 2008:

SELECT CAST(StartDate as date) AS ForDate,
       DATEPART(hour,StartDate) AS OnHour,
       COUNT(*) AS Totals
FROM #Events
GROUP BY CAST(StartDate as date),
       DATEPART(hour,StartDate)

Untuk pra-2008:

SELECT DATEADD(day,datediff(day,0,StartDate),0)   AS ForDate,
       DATEPART(hour,StartDate) AS OnHour,
       COUNT(*) AS Totals
FROM #Events
GROUP BY CAST(StartDate as date),
       DATEPART(hour,StartDate)

Ini menghasilkan :

ForDate                 | OnHour | Totals
-----------------------------------------
2011-08-09 00:00:00.000     12       3


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jatuhkan Kunci Asing tanpa mengetahui nama kendalanya?

  2. SQL Server 2016:Buat Tampilan

  3. Dapper.NET dan proc tersimpan dengan beberapa set hasil

  4. Cara Memperbaiki SQL Server Mendeteksi Kesalahan I/O Berbasis Konsistensi Logis

  5. Klausa SQL OVER() - kapan dan mengapa ini berguna?