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

Máy chủ Sql:Đếm bản ghi (bao gồm cả 0) mỗi khoảng thời gian mười phút

- Vì dữ liệu mẫu của bạn kéo dài 27 giờ:

DECLARE
    @hours TINYINT,
    @minute_interval TINYINT,
    @start SMALLDATETIME;

SELECT
    @hours = 27,
    @minute_interval = 10,
    @start = '20100122 13:00';

;WITH x AS 
(
    SELECT TOP (@hours * (60 / @minute_interval))
        n = ROW_NUMBER() OVER
        (ORDER BY column_id)
    FROM msdb.sys.columns
),
intervals(boundary) AS
(
    SELECT CONVERT
    (
      SMALLDATETIME,
      DATEADD(MINUTE, (-n * @minute_interval), @start)
    )
    FROM x
)
SELECT
    i.boundary,
    RequestCount = COUNT(d.id),
    DistinctPopIDs = COUNT(DISTINCT d.popid)
FROM
    intervals AS i
LEFT OUTER JOIN
    dbo.Track_PageSubmit AS d
    ON d.requestBegin >= i.boundary
    AND d.requestBegin < DATEADD(MINUTE, @minute_interval, i.boundary)
GROUP BY i.boundary
ORDER BY i.boundary;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chèn chuỗi trống vào cột INT cho SQL Server

  2. Chuyển đổi biểu thức CASE trong SQL thành cột dẫn xuất trong SSIS

  3. Cuộc gọi MS Access thủ tục SQL Server được lưu trữ

  4. Học máy có ý nghĩa như thế nào đối với các chuyên gia cơ sở dữ liệu

  5. Truy vấn cơ sở dữ liệu chéo, kết hợp ưu điểm và nhược điểm