SSMS
 sql >> Cơ Sở Dữ Liệu >  >> Database Tools >> SSMS

Truy vấn SQL So sánh các giá trị trong mỗi 15 phút và hiển thị kết quả mỗi giờ

Dưới đây là truy vấn bạn cần và một giải pháp hoạt động Lưu ý:Tôi đã thay đổi khung thời gian thành 24 giờ

       ;with SourceData(HourTime, Value, RowNum)
  as
  (
    select 
      datepart(hh, UTCTime) HourTime, 
      Value, 
      row_number() over (partition by datepart(hh, UTCTime) order by UTCTime) RowNum
    from foo
    union 
    select 
        datepart(hh, UTCTime) - 1 HourTime, 
        Value,
        5
    from foo
    where datepart(mi, UTCTime) = 0
  )
  select cast(A.HourTime as varchar) + ':00' UTCTime, sum(case when A.Value = B.Value then 1 else 0 end) ConstantValues
  from SourceData A
   inner join SourceData B on A.HourTime = B.HourTime and
                           (B.RowNum = (A.RowNum - 1))
  group by cast(A.HourTime as varchar) + ':00'


  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Không thể đăng nhập vào máy chủ trong SQL Server 2008 R2 Management Studio

  2. Xác nhận trước khi xóa / cập nhật trong SQL Management Studio?

  3. Không thể xác định thư mục đích hợp lệ để cài đặt khi cài đặt SQL Server Management Studio 2016

  4. Phạm vi ngày cho tập hợp dữ liệu giống nhau

  5. Làm thế nào để truy xuất dữ liệu từ SQL Server dựa trên ví dụ dưới đây?