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

Cách tính giá trị trung bình động trong n giờ qua

Thực tế là bạn cần tính giá trị trung bình cho mọi giờ, thực sự làm cho việc này đơn giản hơn, vì bạn chỉ cần SUM sản phẩm đếm và chia nó cho một số cố định (24). Vì vậy, tôi nghĩ rằng điều này sẽ nhận được kết quả bạn muốn (mặc dù trong trường hợp cụ thể này, con trỏ thực sự nhanh hơn):

SELECT A.*, B.ProductCount/24 DailyMovingAverage
FROM ProductInventory A
OUTER APPLY (   SELECT SUM(ProductCount) ProductCount
                FROM ProductInventory
                WHERE ProductName = A.ProductName 
                AND [Date] BETWEEN DATEADD(HOUR,-23,A.[Date]) AND A.[Date]) B


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chuyển đổi khóa chính int thành bigint trong Sql Server

  2. Lỗi tên cột không hợp lệ khi gọi chèn sau khi tạo bảng

  3. Làm cách nào để trích xuất chuỗi con cụ thể này trong SQL Server?

  4. Làm cách nào để chuyển một danh sách dưới dạng tham số trong một thủ tục được lưu trữ?

  5. Một khóa ngoại linh hoạt