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

Bagaimana menghitung rata-rata bergerak selama n jam terakhir

Nah, fakta bahwa Anda perlu menghitung rata-rata untuk setiap jam, sebenarnya membuat ini lebih sederhana, karena Anda hanya perlu SUM jumlah produk dan membaginya dengan nomor tetap (24). Jadi saya pikir ini akan mendapatkan hasil yang Anda inginkan (meskipun dalam kasus khusus ini, kursor sebenarnya lebih cepat):

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. Bagaimana cara menginstal freetds di Linux?

  2. Bagaimana saya bisa memasukkan lebih dari 8000 karakter dalam kolom VARCHAR(MAX) dengan ExecuteNonQuery?

  3. Mengapa Prosedur Tersimpan lebih cepat daripada Query

  4. TSQL Pivot tanpa fungsi agregat

  5. Tidak dapat melihat pemicu yang saya buat di SQL Server Management Studio 2008