webForumDet fria alternativet

Beräkna mest sålda

0 svar · 536 visningar · startad av Dino

DinoMedlem sedan sep. 20011 914 inlägg
#1

Detta är en vidareutveckling på tråden Beräkna försäljningsstatistik.

Vill nu ta ut den mest sålda produkten per år/månad/dag mellan två datum.

Resultatet med nedan sql blir:

Datum              Quantity           SKU 
2007-10-28              1           LE_003_B                                           
2007-10-28              1           LE_003_C                                           
2007-10-28              2           TOY_009                                            
2007-10-29              0                                                              
2007-10-30              6           TOY_019_1 
2007-10-30              1           TOY_018_3                                          
2007-10-31              0
SELECT	c.dt as [Date], COALESCE(COUNT(oi.Quantity),0) as Quantity, p.SKU
FROM	dbo.Calendar as c LEFT OUTER JOIN 
		dbo.[Order] as o ON o.CreateDate >= c.dt
			AND o.CreateDate < dateadd(day,1,c.dt) LEFT OUTER JOIN 
		dbo.[OrderItem] as oi ON o.Id = oi.OrderId LEFT OUTER JOIN 
			dbo.[Product] as p ON oi.ProductId = p.Id
WHERE	c.dt BETWEEN @startdate AND @enddate
GROUP BY c.dt, p.SKU
ORDER BY c.dt;

Önskat resultat är:

Datum              Quantity           SKU                                           
2007-10-28              2           TOY_009                                            
2007-10-29              0                                                              
2007-10-30              6           TOY_019_1                                          
2007-10-31              0

Tack.

257 ms totalt · 3 externa anrop · v20260731065814-full.30151723
129 ms — hämta forumlista (db)
125 ms — hämta statistik (db)
128 ms — hämta tråd, inlägg och bilagor (db)