Ik heb een website www.bosstime.nl gemaakt in de database voornamelijk data over concerten en setlijsten van Bruce Springsteen concerten, waar leuke statistieken en overzichten van gemaakt kan worden. Nu wil ik de statistieken uitbreiden met een top 10 van nummers waar de show mee geopend wordt en waar de show mee gesloten wordt. De showopener top 10 is geen probleem, die query is me vrij eenvoudig gelukt, maar de showclosers is lastiger. Ik heb een gevoel dat ik iets over het hoofd zie maar zie niet wat.
Ik heb o.a. de volgende tabellen:
bt_songs: de nummers (id, titel, songtekst, releasedatum etc)
bt_live: de concerten (id, datumconcert, plaats etc)
bt_concertsongs: de setlijst -> koppeling tussen het concert en de gespeelde nummers (id, concertid, volgorde, songid)
Het veld 'volgorde' geeft aan het hoeveelste nummer het van de setlijst is. Nummer 1 is het eerste nummer van dat concert, het laatste nummer van een concert varieert. De ene keer worden er 26 nummers gespeeld, de andere keer 34.
Voorbeeld van een een stukje van de bt_concertsongs (id, concertid, volgorde, songid):
1 12 1 41
2 12 2 267
3 12 3 206
4 12 4 30
5 12 5 8
6 12 6 45
7 12 7 271
8 12 8 33
9 12 9 34
10 12 10 67
11 12 11 80
12 12 12 269
13 12 13 216
14 12 14 70
15 12 15 20
16 12 16 218
17 12 17 275
18 12 18 276
19 12 19 25
20 12 20 272
21 12 21 279
22 12 22 174
23 12 23 280
24 12 24 21
25 12 25 72
26 12 26 75
27 12 27 263
Showopeners:
SELECT bt_songs.titel, songid, count(songid) FROM `bt_concertsongs` Inner Join bt_songs On bt_songs.id = bt_concertsongs.songid WHERE `volgorde` = 1 GROUP BY songid Order By count(songid) DESC LIMIT 0 , 10
Ik wil dus een top 10 maken vanuit deze tabel waar per concert de waarde van 'volgorde' het hoogste getal is bij dat concertid.
Ik weet even niet hoe ik dit zou moeten doen. Heeft iemand suggesties?
1.410 views