GROUP BY geeft niet het juiste resultaat

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

PHP Full Stack Developer

Bedrijfsomschrijving Met jouw nuchtere doenersmentaliteit pas jij goed tussen de Twentse cultuur die heerst op kantoor. Dit wil zeggen, geen, of een hele platte hierarchie en een sfeer waarin keuzes snel worden gemaakt. Jij krijgt een kick om te werken met strakke deadlines, de adrenaline gebruik jij de ene keer om robuuste PHP code te kloppen maar dit kan net zo goed de volgende keer een project zijn wat meer gefocust is op de front-end. Dit is een organisatie waarbij je met een klein team verantwoordelijk bent voor een essentieel onderdeel van de business. De manager van het vijfkoppig team

Bekijk vacature »

Systeembeheerder Citrix Welkomstbonus € 5.000

Systeembeheerder Citrix senior Welkomstbonus van € 5.000,- Bij T2 zorgen we goed voor elkaar en doen wij leuke dingen met leuke mensen. We zorgen voor uitdagende opdrachten zodat jij jezelf onbeperkt kan blijven ontwikkelen. Ben jij een ervaren systeembeheerder Citrix en wil je het beste uit jezelf halen? Dan ben je van harte welkom bij T2 en ontvang je onze welkomstbonus ter waarde van €5.000,-. Er werken leuke mensen bij T2, die op een professionele en informele wijze met hun carrière en collega’s omgaan. Dat is de basis voor succes! Het is vanzelfsprekend dat je met de nieuwste technieken werkt.

Bekijk vacature »

Senior Product Software Developer (Java)

We are looking for an experienced Java Developer to join our multidisciplinary, international (DevOps) team to create top-notch online services, driven by state-of-the-art software for our professional customers worldwide. As a Wolters Kluwer Software Engineer you will create our digital solutions by working with the latest technologies. You are a key member of a geographically distributed development team working on various digital platforms and tools. The role As the Java Developer you will work in a multidisciplinary, international team (DevOps). The primary focus of the team is to develop the Content Management System (CMS) on the basis of Continuous Integration

Bekijk vacature »

Next-level Java Developer functie, veel verantwoor

Bedrijfsomschrijving Mobile Development en Ops Engineering gaan hand in hand bij deze organisatie dat een hoog verantwoordelijkheidsgevoel draagt. Als organisatie ontwikkelt zij dan ook veelal mobiele applicaties ter inspiratie en ondersteuning van belangrijke sectoren in Nederland. Met het technische team van gepassioneerde developers en engineers voeren ze dagelijks veelal diverse, inspirerende en complexe werkzaamheden uit waarbij zij als Java ontwikkelaar interessante software realiseert. Door gebruik van innovatieve software en de nieuwste platformen binnen de sector is deze klant dan ook zeker als vooruitstrevend te betitelen waar zijn enorm veel waarde aan hecht. Functieomschrijving Je werkt aan innovatieve producten binnen een

Bekijk vacature »

Ervaren .NET developer gezocht, api development, .

Ben je een ervaren .NET developer en op zoek naar baan waarbij je je ook meer kunt gaan richten op architectuur? Binnen een leuke, sociale en betrokken werkomgeving? Met technieken als .NET Core en Azure? Dan zou deze baan wellicht iets voor jou kunnen zijn. Voor een organisatie in Rotterdam zijn we op zoek naar eens ervaren .NET ontwikkelaar. De organisatie bevindt zich in de financiële branche en is een van de grotere spelers in hun vakgebied. De organisatie bestaat uit circa 600 medewerkers en heeft verschillende vestigingen in Nederland. Het hoofdkantoor zit in Rotterdam en daar is ook de

Bekijk vacature »

.NET Developer C# Web-development

Bedrijfsomschrijving Onze klant levert kwaliteitsdienst binnen zijn sector, het niveau van de Nederlandse sector is internationaal bekend! De organisatie richt zich op het waarborgen van deze kwaliteit en voorziet een groot aantal klanten in het MKB van jaarlijkse keuringen. Je komt te werken binnen een team van ongeveer 10 medewerkers waarbij de focus ligt op de doorontwikkeling en het implementeren van oplossingen in het applicatielandschap. Binnen deze organisatie werken ze met diverse Scrum/Agile teams, het is dan ook belangrijk dat je ervaring hebt met deze werkwijze en het leuk vindt om op deze manier te werk te gaan. Het betreft

Bekijk vacature »

Portal ETL developer

For a client in Amsterdam I am looking for a ETL developer. In this role your aim is to create the data infrastructure in a simple and efficient matter by designing building, testing and integrating data from various sources. Preferred experience: Extensive experience in developing Data Solution and BI systems Hands-on ETL, SQL and programming experience Experience in migrating an existing (Oracle, Umax) data warehouse to the Cloud Understanding of Azure related services (i.e.: Snowflake, Matillion, SQL, Python, Spark, Azure DevOps) Does this assignment suit you, or someone within your network? Then please send me an updated CV and I

Bekijk vacature »

Team Lead PHP

Als Tech Lead zorg voor een glimlach op het gezicht van onze klanten door geweldige software af te leveren. Hoe word ik Team Lead PHP bij Coolblue? Als Team Lead PHP bouw en leid je een team dat uitblinkt in het leveren van hoogwaardige en kostenefficiënte software. Je ondersteunt teamleden bij het afbakenen van hun doelen en met de aanpak om ze te behalen. Als Tech Lead zorg voor een glimlach op het gezicht van onze klanten door geweldige software af te leveren en een effectief team op te bouwen. ‘’Ook Team Lead PHP worden bij Coolblue? Else de Boer

Bekijk vacature »

Junior Developer Fullstack Java DevOps Cloud

Bedrijfsomschrijving Onze klant is een grote organisatie en is actief in de financiële sector. Binnen Europa bieden zij veel verschillende producten en diensten aan. De afdeling waar je komt te werken richt zich op het digitaliseren van primaire digitale processen. Wat digitale processen betreft lopen wij in Nederland ver voor op andere landen in Europa! Deze services wil de organisatie ook aanbieden aan hun collega’s en klanten in landen zoals België, Frankrijk en Duitsland. Jij en je team zijn verantwoordelijk voor de digitalisatie van de primaire processen en deze vervolgens te optimaliseren & automatiseren. Binnen het team zal je end-to-end

Bekijk vacature »

Application Developer Tech Lead

UPS delivers millions of packages around the world daily. From our early roots as an American bike-messenger company to our present day multi-billion-dollar global corporation, UPS has held a singular focus – empowering commerce around the world. We have become the world's largest package delivery company and a leading global provider of specialized transportation and logistics services. Every day, we choreograph the infinite movements of goods, funds, and information in more than 200 countries and territories around the world and with millions of packages send and delivered daily our IT systems play a critical role. To stay in the leading

Bekijk vacature »

Interne rol als Low-Code Developer, o.a. OutSystem

Bedrijfsomschrijving Deze snelgroeiende, Europese organisatie met zo’n 7,500 medewerkers verdeeld over 1,400 vestigingen is opzoek naar een Low-Code Developer om het huidige team te versterken. Het gaat hier om een interne rol bij een mooie Nederlandse organisatie. Het is een grote speler in de markt en geavanceerde systemen en hulpmiddelen spelen daarom een belangrijke rol in hun corebusiness. Om de lijnen kort te houden binnen deze grote organisatie wordt er gewerkt in kleine teams. Op het gebied van IT voeren ze alles zelf uit. Het team wordt onderverdeeld over Business Intelligence, Functioneel Analisten, Systeembeheer en Software Development. Voor de organisatie

Bekijk vacature »

ASP.NET CORE developer Fullstack / Intern

Bedrijfsomschrijving Mijn klant houdt zich bezig met alleen maar maatwerk software. Door de flexibiliteit van de developers bedienen ze bijna elke markt; van start-ups tot aan de grotere internationaal georiënteerde bedrijven. Bepaalde applicaties zijn standaard geworden en worden als totaalpakket aan de klant aangeboden. Andere applicaties worden maandelijks onder de loep genomen. Kortom: genoeg uitdaging voor een .NET Developer. Je komt te werken in een gezellig team van ongeveer 20 mensen met een platte structuur. Er wordt veel voor het personeel geregeld en regelmatig ga je met het team op pad. Je collega's zijn IT minded mensen. Het gaat hier

Bekijk vacature »

Senior Java developer (payroll/dienstverband CF)

Opdrachtomschrijving Onze opdrachtgever heeft ruimte voor een extra java developer. Je komt dan bij ons op de payroll (!). De stack (lees gewenste ervaring): Backend: Java microservices Frontend: React Dit draaiende in de cloud, in Docker op Kubernetes. Daarnaast heb je ervaring met: SpringBoot, Kotlin (pre) CI/CD Agile werken aan digitale producten. Locatie vooralsnog vanuit huis, locatie opdrachtgever is Rotterdam 32-36 uur per week. Bij interesse hoor ik je graag! Liesbeth Dijkers 010 2069800

Bekijk vacature »

Webdeveloper

Functieomschrijving Voor een detacheerder in de ICT, gevestigd in Delft, zijn we op zoek naar iedereen met kennis van programmeertaal. Dit bedrijf heeft opdrachten bij verschillende organisaties, denk aan front-end, back-end, embedded systems, mobiele apps en data science. Naast bovenstaande kennis kan jij collega's motiveren en enthousiasmeren met daarbij efficiëntie en kwaliteit hoog in het vaandel. Aangezien je soms in een project werkt is samenwerken met andere ontwerpers, programmeurs en interactiedeskundigen niet weg te denken. Tot slot is het belangrijk dat jij van afwisseling houdt en snel werkzaamheden op pakt. Jij vindt werken op projectbasis leuk! Het zou ook zomaar

Bekijk vacature »

Parttime Software Ontwikkelaar / 20 uur p.w. / .NE

Bedrijfsomschrijving Onze klant in de regio Haarlem is momenteel op zoek naar een junior/medior software ontwikkelaar .NET/Azure voor 20 uur per week. Het bedrijf is een onderwijsinstelling waar de ICT faciliteiten zeer goed geregeld zijn. Op de instelling heerst een prettige, open sfeer waar je de gebruikers ziet rondlopen. De werktijden en de locatie is flexibel: je kan tussen 7.30 en 9.30 binnenkomen, maar op dit moment werkt iedereen thuis. De dresscode is casual, dus jouw favoriete hoody en sneakers kan je gewoon aan naar het werk! De IT-afdeling van deze organisatie bestaat uit 22 personen. Jij zal het software

Bekijk vacature »
Bryan De Baar

Bryan De Baar

08/02/2020 22:43:47
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
teams
+--+------+
|ID| TEAM |
|1 |Yellow|
|2 |Green |
|3 |Blue  |
|4 |Red   |
+--+------+

Players
+--+------+
|ID| NAME |
|1 |Ben   |
|2 |Mike  |
|3 |Jason |
+--+------+

Lineups
+---+---+
|PID|TID|
|1  |3  |
|2  |1  |
|2  |4  |
|3  |2  |
+--+----+


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
$sql
    = "    SELECT teams.id teamsid, teams.team teamname, lineups.tid, players.name
            FROM teams
            LEFT JOIN lineups ON lineups.tid = teams.id
            AND lineups.pid = 2
            LEFT JOIN players ON lineups.pid = players.id
            GROUP BY players.name
            ORDER BY team
          "
;
$result = mysqli_query($connection, $sql);

while($row = mysqli_fetch_assoc($result)){
    echo $row['name'];
    $checked = ($row['tid'] === NULL ? '' : ' checked="checked"');
?>

<label>
    <input type="checkbox" <?php echo $checked; ?>><?php echo $row['teamname']; ?>
</label><?php
}
?>

De voorlaatste regel in de query GROUP BY players.name zorgt ervoor dat de data niet word weergegeven zoals ik zou willen.
Zonder deze regel zou het resultaat zijn
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<label><input type="checkbox">Blauw</label>
<label><input type="checkbox">Geel</label>
"Ben"
<label><input type="checkbox" checked="checked">Groen</label>
"Ben"
<label><input type="checkbox" checked="checked">Rood</label>


Maar ik wil de player naam 1 keer laten voorkomen in het resultaat, ik dacht dan gebruik ik GROUP BY maar dit levert als resultaat op
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<label><input type="checkbox">Geel</label>
"Ben"
<label><input type="checkbox" checked="checked">Rood</label>


Het resultaat dat ik graag zou willen is
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
"Ben"
<label><input type="checkbox">Blauw</label>
<label><input type="checkbox">Geel</label>
<label><input type="checkbox" checked="checked">Groen</label>
<label><input type="checkbox" checked="checked">Rood</label>


Wat moet ik aanpassen hiervoor?
Gewijzigd op 08/02/2020 22:44:29 door Bryan De Baar
 
PHP hulp

PHP hulp

26/11/2020 08:53:44
 
Thomas van den Heuvel

Thomas van den Heuvel

09/02/2020 00:45:31
Quote Anchor link
Wat wil je in dit overzicht precies bereiken?
Is dit een pagina die aangeeft in welk team een (specifieke) speler opgesteld kan staan?
Je hebt sowieso een rare (?) conditie: AND lineups.pid = 2? Klopt dat?

En was dit hele gebeuren al niet behandeld / opgelost in een ander draadje? Is het echt gerechtvaardigd om hier een nieuw topic over te openen want gaat dit niet over precies hetzelfde?
 
Bryan De Baar

Bryan De Baar

09/02/2020 01:45:33
Quote Anchor link
Hey Thomas,

Klopt in een ander topic hebben we de left join behandeld dit ging inderdaad om het uitlezen van de database en dan checked checkboxes in welk team een player zit.
Aangezien dit iets anders betreft heb ik een nieuw topic geopend wellis waar met het zelfde voorbeeld.

De tabel teams moet altijd volledig worden teruggeven zit de speler in bepaalde teams dan moeten deze checkboxes aangevinkt zijn.
Dit stukje hebben we dus behandeld maar nu wil ik nog de naam van de speler terug krijgen maar wel maar een keer, vandaar dat ik GROUP BY heb geprobeerd.
Maar dan krijg ik het verkeerde resultaat zoals bovenstaand uitgelegd.
 
Jop B

Jop B

09/02/2020 17:11:29
Quote Anchor link
Hi Bryan,


Ik denk dat je voor die naam een aparte query moet maken.
Je query kan trouwens ook nog korter:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
    SELECT id, team, tid
    FROM teams
    LEFT JOIN lineups ON teams.id = lineups.tid
    AND lineups.pid = 2
    ORDER BY team


Maak dan een query alleen op de players tabel met al ID = 2 als je dan een variable maakt en die laat invullen bij de player ID en de TID dan krijg je zowel de naam terug als je checkboxes.

dan krijg je dus zoiets

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
$theid
= 2;

$sql1 = "
SELECT id, team, tid
FROM teams
LEFT JOIN lineups ON teams.id = lineups.tid
AND lineups.pid = $theid
ORDER BY team
"
;

$result1 = mysqli_query($connection, $sql1);

$sql2 = "
SELECT name
FROM players
WHERE id = $theid
"
;

$result1 = mysqli_query($connection, $sql2);

//En hier je loopjes...
?>

Gewijzigd op 09/02/2020 17:12:23 door Jop B
 
Thomas van den Heuvel

Thomas van den Heuvel

09/02/2020 22:13:40
Quote Anchor link
Dus je wilt van alle teams alle spelers? Zou het niet logischer zijn om een pagina te maken voor een enkel team, en hierop alle spelers te tonen? Dit kan wederom in een enkele query, op precies dezelfde manier als in het andere topic, maar nu met de spelerstabel als uitgangspunt.

Ik zou dus verwachten dat je enerzijds een soort van overzichtspagina van teams hebt, en als je op een team klikt, dat je een detailpagina te zien krijgt van het betreffende team met een lijstje van alle spelers, en de spelers die in de opstelling van het team staan zijn aangevinkt. Maar dit laatste kan dus met een enkele query.
Gewijzigd op 09/02/2020 22:51:10 door Thomas van den Heuvel
 
Bryan De Baar

Bryan De Baar

10/02/2020 00:41:45
Quote Anchor link
Dank Jop voor het meedenken!

Thomas:

Als ik de details van Ben wil tonen dan wil ik de naam Ben 1 keer tonen.
Daarnaast moeten alle teams worden geladen (dit zijn checkboxes) en waar ben in voorkomt die moeten zijn aangevinkt.

De query voor de checkboxes hebben we in de andere topic behandeld maar ik krijg de naam Ben niet enkel terug.
Hij doet de naam of 2 keer teruggeven omdat hij in 2 teams voorkomt, en als ik dan de naam groepeer krijg ik van de teams alleen geel en rood terug.
 
Thomas van den Heuvel

Thomas van den Heuvel

10/02/2020 15:40:30
Quote Anchor link
Maar wat is het precieze doel van de pagina dan?

Als je echt alles wilt tonen - alle teams met alle lineups (of per speler tot welk team zij behoren?) - dan lees je toch gewoon alles uit in een of meer queries en bouw je in PHP wat kleine datastructuren (in arrays)?

Maar als ik het goed begrijp is dit dus een soort van bewerkpagina. Wil je echt alle data tegelijkertijd kunnen wijzigen? Dit wordt al snel een onoverzichtelijke brei, zo niet visueel dan wel in code?

Ik zou voor een wat simpelere indeling gaan, waarbij je bijvoorbeeld ofwel alle data van een (enkele) speler wijzigt, een (enkel) team of wat dan ook. Het compartimenteren van informatie werkt doorgaans makkelijker.

Uiteraard kun je wel (totaal)overzichten uitdraaien met al deze informatie, maar die zijn dan "read only".

Ook is het handig om hier eerst "functioneel" over na te denken - wat wil je precies bereiken met zo'n pagina. Dan heb je namelijk ook een beter beeld van wat je gaat maken.

Het bovenstaande voorbeeld klopt ook niet? Je zegt dat je het groene en rode team aangevinkt wilt hebben, maar er is geen enkele speler (in jouw dataset) die in beide lineups staat? Speler 2 (Mike) is onderdeel van team geel (1) en rood (4).

Vandaar ook mijn verwarring - je hebt het over een pagina waarin alle teams getoond zouden moeten worden, maar in de query staat een verwijzing naar een specifieke speler (AND lineups.pid = 2). Dat rijmt niet helemaal? Of wil je één overzicht waarbij alle spelers per teams aangevinkt staan? Dus nogmaals: hoe zou de indeling van deze pagina moeten zijn, en lijkt het je echt een goed idee om zo alles bij elkaar te gooien?
 
Jop B

Jop B

10/02/2020 16:50:11
Quote Anchor link
Ik denk dat hij bedoeld:

Hi Thomas,

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
Naam: Mike

Opgesteld in groep(en):
<label><input type="checkbox">Blauw</label>
<label><input type="checkbox">Geel</label>
<label><input type="checkbox" checked="checked">Groen</label>
<label><input type="checkbox" checked="checked">Rood</label>
Gewijzigd op 10/02/2020 17:30:45 door Jop B
 
Thomas van den Heuvel

Thomas van den Heuvel

10/02/2020 17:35:03
Quote Anchor link
@Jop ja maar dat precieze vraagstuk is al in de eerdergenoemde thread behandeld, dus ik ga er daarom vanuit dat het hier een andere indeling betreft.
 
Jop B

Jop B

10/02/2020 18:09:17
Quote Anchor link
Quote:
De query voor de checkboxes hebben we in de andere topic behandeld maar ik krijg de naam Ben niet enkel terug.


Wat ik opmaak uit zijn vraag hier is dat als hij de naam van de speler (player) toevoegt aan zijn bestaande query dat deze dan 2x voorkomt in het resultaat als we uitgaan van id: 2 = Mike

Daarom heb ik bovenstaand voorbeeld gegeven om 2 aparte queries te maken: 1 voor de naam en 1 voor de teams met checkboxes.

In zijn eerste bericht geeft hij als voorbeeld dit aan als resultaat te willen ontvangen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
1maal de naam //vraagstelling in dit topic
"Mike"

en de checkboxes van de teams //ander topic behandeld
<label><input type="checkbox">Blauw</label>
<label><input type="checkbox">Geel</label>
<label><input type="checkbox" checked="checked">Groen</label>
<label><input type="checkbox" checked="checked">Rood</label>


Dan kan ie toch het beste 2 queries maken of ben ik dan fout het denken?
 
Thomas van den Heuvel

Thomas van den Heuvel

10/02/2020 19:08:10
Quote Anchor link
Mja, je kunt altijd dingen opsplitsen in meerdere queries als dat praktischer is. Het is niet het einde van de wereld als je wat meer simpele queries hebt. In dit geval - als je een soort van totaaloverzicht wilt - dan kun je ook wat arraytjes bouwen:
- een array met speler info id => data
- een array met team info id => data
- een koppelarray met een "mapping" speler => team of vice versa

Hiermee ontkoppel je ook wat logica van de weergave en is het daar enkel een kwestie van het uitvoeren van loopjes over zo'n array, en dat je checkboxen aanvinkt door te controleren of een array index/waarde bestaat.

Hoe je dat verder precies uit je database trekt maakt dan ook geen biet meer uit, dus als het eenmaal in dat soort arrays zit kun je altijd nog over de optimalisatie van je queries nadenken zonder dat dat van invloed is op de weergave, en kun je dit in afzondering aanpassen, zolang dit maar dezelfde arrays oplevert. Zoals vanouds: verdeel en heers.
Gewijzigd op 10/02/2020 19:09:56 door Thomas van den Heuvel
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

14/02/2020 18:31:07
Quote Anchor link
Bryan De Baar op 08/02/2020 22:43:47:
De voorlaatste regel in de query GROUP BY players.name zorgt ervoor dat de data niet word weergegeven zoals ik zou willen.

Dat klopt, de SQL-standaard stelt dat alle kolommen die niet in een aggregate functie staan moeten worden vermeld in de GROUP BY, tenzij ze volledig afhankelijk zijn van een kolom die er wel in voorkomt. In MySQL heb je de FULL_GROUP_BY flag waarmee je dit aan of uit kan zetten.
Bryan De Baar op 08/02/2020 22:43:47:
Maar ik wil de player naam 1 keer laten voorkomen in het resultaat, ik dacht dan gebruik ik GROUP BY maar dit levert als resultaat op
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<label><input type="checkbox">Geel</label>
"Ben"
<label><input type="checkbox" checked="checked">Rood</label>


Het resultaat dat ik graag zou willen is
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
"Ben"
<label><input type="checkbox">Blauw</label>
<label><input type="checkbox">Geel</label>
<label><input type="checkbox" checked="checked">Groen</label>
<label><input type="checkbox" checked="checked">Rood</label>

Wat moet ik aanpassen hiervoor?

Dat de naam meerdere keren voorkomt in het resultaat is inherent aan MySQL, dit is zonder ingrepen niet te veranderen, het simpelste is om dit in php af te vangen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$result
= mysqli_query($connection, $sql);
$flag = 0;
while($row = mysqli_fetch_assoc($result)){
        if (!$flag) {
        echo $row['name'];
        $flag = 1;
    }

        $checked = ($row['tid'] === NULL ? '' : ' checked="checked"');
    
?>

<label>
    <input type="checkbox" <?php echo $checked; ?>><?php echo $row['teamname']; ?>
</label><?php
}
?>

Dan over de query zelf, in deze situatie lijkt het mij handiger een CROSS JOIN te gebruiken:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
SELECT p.player_name, t.team_name, l.player_id
FROM players p
CROSS JOIN teams t
LEFT JOIN lineups l ON l.player_id = p.player_id AND l.team_id = t.team_id
WHERE p.player_id = 2

De CROSS JOIN geeft je alle mogelijke combinaties van teams / spelers, dit heeft als voordeel dat je dit kan gebruiken voor de benadering van zowel spelers en teams. Plus dat het ook werkt voor meerdere spelers en/of team (dit in tegenstelling met de oplossing via de LEFT JOIN)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.