NETworkMedlem sedan juni 20011 679 inlägg
Jag har en sql-sats som plockar ut data från två tabeller. För varje rad i tabell A finns ett antal rader i tabell B (som är kopplade mot varandra med ett GameID). Jag plckar dock bara ut en rad för varje GameID men gör ett par medelvärden från samtliga rader för varje GameID. Så här ser raden ut och den fungerar bra:
SELECT COUNT(ReviewID) AS Antal, ROUND(AVG(Overall),1) AS Overall, MAX(Overall) AS High, MIN(Overall) AS Low, Name, Platform, Type, Topic.LatestDate, Topic.GameID FROM Topic LEFT OUTER JOIN Review ON Topic.GameID = Review.GameID GROUP BY Name, Platform, Type, Topic.LatestDate, Topic.GameID ORDER BY Topic.LatestDate DESC
MEN! När jag istället för att sortera på Topic.LatestDate" vill sortera på "Overall" så visar den alla rader. Förstår inte varför, har försökt på många olika sätt. Den ska alltså bara visa EN rad för varje GameID även om det finns flera rader med samma GameID.
Siffran jag får ut från Overall är ju alltså ett nummer som skapas i sqlsatsen och som inte finns i databasen, antar att det är där någonstans som problemet ligger?
LarsGMedlem sedan dec. 200012 465 inlägg
Det låter väldigt felaktigt, om man säger så
SELECT COUNT(ReviewID) AS Antal, ROUND(AVG(Overall),1) AS Overall, MAX(Overall) AS High, MIN(Overall) AS Low,
Name, Platform, Type, Topic.LatestDate, Topic.GameID
FROM Topic LEFT OUTER JOIN Review ON Topic.GameID = Review.GameID
GROUP BY Name, Platform, Type, Topic.LatestDate, Topic.GameID ORDER BY 2 DESC
Vilken dbms gäller detta?
NETworkMedlem sedan juni 20011 679 inlägg
Jag har nog aldrig i tidshistorien varit med om någon som svarar så snabbt, skriver så rätt och kan så mycket. Vem är du??????????????????
TACK! :)
Jag använder access än så länge. Förstår fortfarande inte riktigt vad du gjort, med sortering på 2 menas att jag sorterar på det som finns på plats nummer två i sql-raden? Vad är skillnaden på att sortera på "2" och på Overall, det är ju samma sak antar jag??
LarsGMedlem sedan dec. 200012 465 inlägg
Jo, 2:an betyder andra kolumnen. Det som händer är att access tolkar din overall i order by som kolumnen overall och inte det som du beräknar i kolumnlistan. Det är helt felaktigt implementerat.