Beste Tweakers,
Ik zit met een probleempje, en ik weet niet zo goed hoe ik dit het beste kan oplossen. Misschien pak ik het fundementeel verkeerd aan. Ik kan i.i.g. niet bedenken hoe ik hier een nette oplossing voor kan maken en of dat uberhaupt wel mogelijk is binnen SQL.
Het probleem is als volgt. Ik wil een soort online Bracket maken (tournament bracket) waar de bracket uit meerdere 'bracket items' bestaat. De finale is bijvorbeeld een 'bracket item' en de kwartfinale ook.
Ik heb een tabel met bracket items:
Bracket_item
Per bracket kunnen er meerdere potjes plaatsvinden. Het kan bijvoorbeeld zijn dat de winnaar van een bracket na een Best of 5 wint, of een best of 3. Ik heb dus een tabel "potjes" die gekoppelt worden aan een bracket. Daarnaast kunnen deze potjes op verschillende plekken gespeeld worden.
Potje
Gelinkt aan een potje zitten dus locaties
locaties
Gelinkt aan de potjes zitten dus ook teams. Teams hebben ook weer een link naar een stad
teams
stad
Wat ik eigenlijk wil doen is een query op de database uitvoeren die een volgende soort array opleverd
Ik weet alleen niet of het mogelijk is de waardes uit de 4de geneste tabel uit 1 query in zo'n tweedimensionele array te krijgen. Het enige wat ik kan bedenken is meerdere queries te doen zodra je de eerste twee geneste tabellen terug te krijgen.
Hopelijk kunnen jullie mij op weg helpen.
Ik zit met een probleempje, en ik weet niet zo goed hoe ik dit het beste kan oplossen. Misschien pak ik het fundementeel verkeerd aan. Ik kan i.i.g. niet bedenken hoe ik hier een nette oplossing voor kan maken en of dat uberhaupt wel mogelijk is binnen SQL.
Het probleem is als volgt. Ik wil een soort online Bracket maken (tournament bracket) waar de bracket uit meerdere 'bracket items' bestaat. De finale is bijvorbeeld een 'bracket item' en de kwartfinale ook.
Ik heb een tabel met bracket items:
Bracket_item
bracket_id | wat extra info |
1 | Blabla |
2 | Bla die bla |
Per bracket kunnen er meerdere potjes plaatsvinden. Het kan bijvoorbeeld zijn dat de winnaar van een bracket na een Best of 5 wint, of een best of 3. Ik heb dus een tabel "potjes" die gekoppelt worden aan een bracket. Daarnaast kunnen deze potjes op verschillende plekken gespeeld worden.
Potje
potje_id | locatie_id | team1_id | team2_id | bracket_item_id |
1 | 1 | 1 | 2 | 1 |
2 | 1 | 2 | 3 | 1 |
3 | 1 | 4 | 1 | 2 |
Gelinkt aan een potje zitten dus locaties
locaties
id | soort locatie |
1 | Watergebied |
2 | Bergen |
3 | Weide |
Gelinkt aan de potjes zitten dus ook teams. Teams hebben ook weer een link naar een stad
teams
id | team naam | team kleur | stad_id |
1 | Pietjes team | Rood | 1 |
2 | Jantjes team | Zwart | 2 |
3 | Geerts team | Blauw | 2 |
stad
id | naam |
1 | Amsterdam |
2 | Parijs |
Wat ik eigenlijk wil doen is een query op de database uitvoeren die een volgende soort array opleverd
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
| [1] => Array ( [bracket_id] => 1 [wat extra info] => Blabla [0] => Array ( [potje_id] => 1 [soort locatie] => Watergebied [team naam (1?)] => Pietjes team [team kleur (1?)] => Rood [naam (1?)] => Amsterdam [team naam (2?)] => Jantjes team [team kleur (2?)] => Zwart [naam (2?)] => Parijs ) [1] => Array ( [potje_id] => 2 [soort locatie] => Watergebied [team naam (3?)] => Geerts team [team kleur (3?)] => Blauw [naam (3?)] => Parijs [team naam (2?)] => Jantjes team [team kleur (2?)] => Zwart [naam (2?)] => Parijs ) ) |
Ik weet alleen niet of het mogelijk is de waardes uit de 4de geneste tabel uit 1 query in zo'n tweedimensionele array te krijgen. Het enige wat ik kan bedenken is meerdere queries te doen zodra je de eerste twee geneste tabellen terug te krijgen.
Hopelijk kunnen jullie mij op weg helpen.