15. maj 2003 - 09:06Der er
4 kommentarer og 1 løsning
SQL - Sum og Group By
Jeg har en tabel: Season: Hold1 | Hold2 | TD1 | TD2 | A | B | 0 | 0 | B | C | 2 | 0 | D | E | 2 | 0 | D | B | 1 | 0 | F | C | 0 | 1 | C | D | 3 | 0 |
TDi = mål scoret af HOLDi
Jeg er ved at lave en "statistik side" hvor jeg gerne vil have en top10 for hold der har scoret flest mål. Men SQL driller. Hvordan kan man gøre det?
Mit eget bud: "SELECT seasonA.hold1, seasonB.hold2, sum(seasonA.td1)+sum(seasonB.td2) AS tds " "FROM season AS seasonA, season AS seasonB " "WHERE seasonA.hold1=seasonB.hold2 " "GROUP BY seasonA.hold1, seasonB.hold2 " "ORDER BY sum(seasonA.td1)+sum(seasonB.td2) DESC"
Hvis du kun skal have antal scorede mål kan du f.eks. gøre det sådan her :
select hold, sum(td) from ( SELECT A.hold1 as hold, A.td1 as td FROM season AS A UNION SELECT B.hold2, B.td2 FROM season AS B ) as samlet Group by hold
Pt. er det ikke den største database, men man ved jo aldrig. Men den tid den sorg. Igen mange tak
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.