Forum
Merhaba,
Sistemde girilen siparişlerin hangi sıklıkla girildiğini bulan script için nasıl bir yol izlemeliyim. Örn: bir üründen farklı zamanlarda 10 adet sipariş girilmiş ortalama ne kadar zamanda bir sipariş veriliyor, gibi.
Veri tabanı tablolarınızı bilmiyorum ama özetle öncelikle zaman bilgisi çekmeniz lazım
SELECT
OrderID,
OrderDate
FROM
Orders
WHERE
ProductID = @ProductID -- Belirli bir ürüne ait siparişleri seçin
ORDER BY
OrderDate;
Bundan sonra siparişlerin arasındaki süreyi hesaplamak için
WITH OrderIntervals AS (
SELECT
OrderID,
OrderDate,
LEAD(OrderDate) OVER (ORDER BY OrderDate) AS NextOrderDate
FROM
Orders
WHERE
ProductID = @ProductID
)
SELECT
OrderID,
OrderDate,
NextOrderDate,
DATEDIFF(MINUTE, OrderDate, NextOrderDate) AS MinutesBetweenOrders
FROM
OrderIntervals
WHERE
NextOrderDate IS NOT NULL;
Ortalama süreyi hesapalam
WITH OrderIntervals AS (
SELECT
OrderID,
OrderDate,
LEAD(OrderDate) OVER (ORDER BY OrderDate) AS NextOrderDate
FROM
Orders
WHERE
ProductID = @ProductID
)
SELECT
AVG(DATEDIFF(MINUTE, OrderDate, NextOrderDate)) AS AverageMinutesBetweenOrders
FROM
OrderIntervals
WHERE
NextOrderDate IS NOT NULL;
Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************
Hakan Bey,
Desteğiniz için çok teşekkür ederim, sorunum çözüldü. 👍 👍 👍
Rica ederim.
Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************