webForumDet fria alternativet

SUM(column) blir 2 istället för 1

Databaser & SQL

1 svar · 1 287 visningar · startad av evilaid

Medlem sedan apr. 2009433 inlägg
Frågan#1

Jag kör en sumeringfunktion enlgt denna

SELECT top 100 c.week, c.door, c.amount, c.closed, SUM(o.sections) AS bokat FROM tbl_order_capacity AS c LEFT OUTER JOIN tbl_order AS o ON c.week = o.order_week AND c.door = o.door
                             WHERE c.door = 2 GROUP BY c.week, c.door, c.amount, c.closed ORDER BY c.week DESC

efter denna fråga ger kolumnen "bokat" resultatet 2 för vecka 23. Men kollar man tabellen tbl_order så finns det bara en rad där där c.week = o.order_week AND c.door = o.door
och där är kolumen "sections" lika med 1 så hur kan sumeringsfunktionen ge resultatet 2?

har jag skrivit frågan fel??

mvh

Medlem sedan maj 2000144 inlägg
#2

Du har inte två rader med värdet tbl_order_capacity.door = 2 i databasen?

Utan att se hela databasen är det svårt att säga vad som är fel, men det känns som att din join ger fler rader än vad man lätt kan tro

249 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)