Meerdere id's INNER JOIN

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Full Stack Developer

Ben jij een kei van een full-stack developer? Heb je ambitie om te groeien en jezelf te ontwikkelen binnen een ambitieus bedrijf? Gaat jouw hart sneller kloppen van transpilers of frameworks zoals Angular, Vue of React? Dan ben jij de persoon die wij zoeken! Voor onze opdrachtgever zijn wij op zoek naar een full-stack developer om onderdeel te zijn van een team dat bestaat uit gedreven developers. Ieders met hun eigen specialiteiten en kennis van de projecten en behoeften vanuit de product owners. We zoeken iemand die met zijn/haar huidige competenties en domeinen dit team wil begeleiden, stimuleren en tevens

Bekijk vacature »

Front-end Developer

Dit ga je doen Je komt in een DevOps-cultuur te werken waarbij je met je team werkt aan de front-end van diverse brand websites; Het ontwerpen van functionele en grafische ontwerpen die worden geïmplementeerd; Draagt zorg voor het maken van analyses; Je werkt nauw met je collega’s samen en geeft elkaar feedback en suggesties waar nodig; Het uitwerken van vraagstukken die afkomstig zijn van verschillende klanten; Hier ga je werken Deze marktleider op gebied van fietsen en fietservaring is gevestigd in twee provincies, verspreid over meerdere locaties. Jij zult voornamelijk in regio Joure aan de slag gaan. De organisatie doelt

Bekijk vacature »

C# .NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Ontwikkelen in Blazor; Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie. Hier ga je werken Binnen deze organisatie werken duizenden mensen binnen allerlei verschillende disciplines. Tevens hebben zij veel specialiteiten in huis, waaronder ook .Net Developers. Ter uitbreiding van een nieuw team en ter ondersteuning van het project zijn ze opzoek naar een nieuwe collega voor het team. Als C#.NET Developer zal jij je

Bekijk vacature »

Full stack developer Python, React

Functie Jij als full stack developer komt binnen onze Technology afdeling te werken. Deze bestaat momenteel uit 15 man. De stack waarmee wij werken is voornamelijk Python, Javascript, React en GraphQL. Binnen deze afdeling wordt er met multidisciplinaire teams gewerkt aan verschillende projecten. Projecten duren vaak langer dan 3 maanden en je bent van begin tot eind vaak betrokken. Naast dat je als full stack ontwikkelaar aan de slag gaat ben je ook Consultant. Dit betekent dat je ook klantcontact hebt in je rol en werkshops geeft. De verhouding tussen deze werkzaamheden zijn ongeveer 70% development en 30% consultancy. Een

Bekijk vacature »

Software Developer (Junior functie)

Functieomschrijving Wij zijn op zoek naar een Software Developer! Sta jij in de startblokken om je carrière te beginnen en kan je niet wachten om toffe software te gaan ontwikkelen? Kortom, ben je onlangs afgestudeerd of sta je op het punt om je papiertje te behalen? Voor een IT dienstverlener dat gespecialiseerd is in Microsoft technologie zijn wij op zoek naar C#.NET Developers. Het bedrijf heeft meerdere klanten in regio Utrecht waar je permanent kan komen te werken. Kom je liever te werken bij een klein softwarebedrijf of bij een groot consultancy bureau? Dat is helemaal aan jou de keuze!

Bekijk vacature »

Cloud Engineer

Ben jij een ervaren Cloud Engineer die complexe omgevingen kan overzien en wil je graag in vaste dienst werken bij een professioneel en kleinschalig bedrijf waar je een belangrijke rol kan spelen? Wij, IntelliMagic in Leiden, ontwikkelen specialistische IT monitoring software die we als SaaS oplossing verkopen aan grote bedrijven in Europa en de VS. We zijn een Nederlands bedrijf met een goede sfeer en met grote waardering voor de persoonlijke inbreng en kwaliteiten van onze medewerkers. Wij zoeken een ervaren Cloud Engineer met academisch denkniveau die verantwoordelijk wordt voor het beheer van de cloud infrastructuur voor onze Europese klanten.

Bekijk vacature »

Frontend Developer - Leeuwarden

Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider in onderwijsland. Wat vragen

Bekijk vacature »

Software developer

Functieomschrijving Voor een gewaardeerde werkgever in de regio van Middelburg zijn wij op zoek naar een ambitieuze PHP/Symfony Developer. Een enthousiast persoon die het development team komt versterken met het aanpakken van complexe en nieuwe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor zowel persoonlijke als professionele groei? Lees dan snel verder! Dit ga je doen: Aanpassingssuggesties van collega’s in kaart brengen, vervolgens te analyseren en daarna te concluderen of de aanpassing een verbetering is; Ontwikkeling en beheer van de serviceportal in Symfony en

Bekijk vacature »

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »

VB.NET developer

Functie Het development team waar jij in terecht komt bestaat uit twee ervaren software developers. De directeur/eigenaar is tevens één van deze developers. Jij werkt direct samen met jouw werkgever en kan dan ook veel kennis en ervaring bij dit bedrijf op doen. Als team zijn jullie verantwoordelijk voor de kantoorapplicatie die deze organisatie aanbied in een niche markt. Het team is op dit moment actief bezig met een migratie waarbij het eindstation eindigt in een C# .NET omgeving. Echter is een deel van de software al geschreven in C# .NET. Hierbij is gebruik gemaakt van C# .NET, CSS, HTML,

Bekijk vacature »

Senior Software developer PHP

Functie Jij als senior PHP ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 developers binnen onze organisatie Jij gaat de brug zijn tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je je taken op voor de dag. Een greep van jouw taken zijn: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden met Security & Privacy Eisen • Minimaal 4

Bekijk vacature »

Front-end Developer Angular

Dit ga je doen Jouw taken als Front End Developer bestaan uit: Het ontwikkelen van maatwerkoplossingen voor klanten; Het meedenken over nieuwe tools en technieken; Het begeleiden van junioren; Het meewerken aan diverse projecten; Het meedenken in UX/UI design. Hier ga je werken Als Front-End Developer ga je in een Scrum team aan de slag met de nieuwste digitale technologieën om klanten en overheden over de hele wereld te ondersteunen met het ondersteunen van hun software, veelal op het gebied van watermanagement en infra. Door middel van real-time data in combinatie met voorspellende analyses, AI, Deep Learning en Machine Learning

Bekijk vacature »

Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 12946 Introductie We are looking for a Java Developer! Our client is one of the most innovation companies located within the Netherlands. We provide high quality software in a high-tech and challenging market. Functieomschrijving The department is specialized in creating and developing high quality software for manufacturing automation in a high tech environment. We strive to provide our clients with high quality software and deliver state of the art solutions in a variety of ways. Creating software infrastructure using Java SE / EE Create applications to fine tune manufacturing processes

Bekijk vacature »

Applicatie ontwikkelaar

Functie omschrijving Zelfstandige applicatie ontwikkelaar gezocht voor familiair bedrijf in omgeving Barendrecht! Ben jij op zoek naar een nieuwe uitdaging en zoek jij een informele werkgever waar je zelfstandig kunt werken binnen een leuk IT team, lees dan snel verder want wie weet zijn wij op zoek naar jou! Binnen deze rol houdt jij je met het volgende bezig: Onderhouden en ontwikkelen van de IT systemen; Opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werken aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkelen en implementeren van MS PowerApps

Bekijk vacature »
Yoeri Achterbergen

Yoeri Achterbergen

08/01/2020 01:44:25
Quote Anchor link
Goede avond,


Ik heb een vraag betreft 2 tabellen die ik gecombineerd wil serveren.
De situatie kort uitgelegd.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
tabel: groups
ID   NAME
1   Blauw
2   Geel
3   Rood

Tabel: users
ID   USERNAME   GROUP
1   Bert          2
2   John          1
3   Jan          1, 3


Als resultaat wil ik:
Bert Geel
John Blauw
Jan Blauw, Rood

De GROUP id's matchen met de nummers in de users kolom GROUP.

Bert en John kan ik makkelijk met een INNER JOIN doen maar Jan heeft 2 group ID's.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
SELECT users.id, users.username users.group, groups.id, groups.name
FROM users
INNER JOIN groups ON users.group=groups.id
?>


Mijn vraag is dan ook welke type kolom voor users.group kan ik het beste hiervoor gebruiken en hoe kan ik meerdere waardes krijgen zoals het voorbeeld van Jan.
Gewijzigd op 08/01/2020 01:46:39 door Yoeri Achterbergen
 
PHP hulp

PHP hulp

26/04/2024 22:33:50
 
Frank Nietbelangrijk

Frank Nietbelangrijk

08/01/2020 05:00:22
Quote Anchor link
Yeh Yoeri,

Dit vraagt om een ManyToMany relatie. Ofwel je hebt een koppeltabel nodig:

Tabellen:
- users
- groups
- user_group

De koppeltabel heeft (meestal) maar twee kollommen: user_id en group_id. Je kunt een primary key toevoegen op deze twee kolommen gezamenlijk.

Je krijgt dan in de koppeltabel:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
user_id group_id
1   2
2   1
3   1
3   3


en je query wordt iets als
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
SELECT u.id, u.username, g.id, g.name
FROM users u
INNER JOIN user_group ug ON u.id = ug.user_id
INNER JOIN groups g ON g.id = ug.group_id

 
Jan R

Jan R

08/01/2020 11:34:21
Quote Anchor link
Als je dan toch 2X user jan hebt in tabel users kan dit misschien ook.
SELECT
id,
USERNAME
,(select GROUP_CONCAT(name) from groups g where g.ID in (SELECT u2.GROUP from users u2 where ID=u.ID)) groepen
from
users u
GROUP BY
id

Frank zijn oplossing met tussen tabel is wel veel beter

Jan
 
Yoeri Achterbergen

Yoeri Achterbergen

08/01/2020 13:15:56
Quote Anchor link
@frank,


Ik heb een koppeltabel gemaakt zoals je aangaf maar zit nu met het volgende:

Als een user 2 groepen heeft zoals Jan dan word deze 2x in het resultaat weergegeven

Bert Geel
John Blauw
Jan Blauw
Jan Rood

Kan het ook dat deze als 1 resultaat eruit rolt
Bert Geel
John Blauw
Jan Blauw, Rood
Gewijzigd op 08/01/2020 21:04:49 door Yoeri Achterbergen
 
Jan R

Jan R

09/01/2020 07:10:26
Quote Anchor link
Ja, via group_concat. zie ook mijn sql voorbeeld.
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
SELECT
    u.id,
    USERNAME,
    (select
         GROUP_CONCAT(name)
     FROM
         user_group ug
     join
         groups g2
         on ug.group_id=g2.id
     WHERE
         ug.User_id=u.ID )
from
    users u


PS group en name zijn reserveerde namen in sql. je gebruikt deze als veldnamen!
Gewijzigd op 09/01/2020 07:39:13 door Jan R
 
Ivo P

Ivo P

09/01/2020 10:48:51
Quote Anchor link
merk trouwens op dat GROUP een gerserveerd woord is, en dus niet zo maar voor een kolomnaam gebruikt mag worden.

https://dev.mysql.com/doc/refman/8.0/en/keywords.html#keywords-8-0-detailed-G

@Jan
waarom een subquery. Waarom niet als

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
SELECT
    u.id,
    u.USERNAME,
    GROUP_CONCAT(g.name)

FROM users u
JOIN user_group ug ON ug.user_id = u.id
JOIN groups g ON ug.group_id=g.id
GROUP BY u.id, USERNAME
Gewijzigd op 09/01/2020 10:49:29 door Ivo P
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/01/2020 05:53:43
Quote Anchor link
Het enigste is dat je dan wel de groepsnamen hebt maar niet de bijbehorende groep-ids. Wat nou als je die beiden nodig hebt? Ik kan me wel indenken dat je nog een GROUP_CONCAT toevoegt maar dan heb je twee lijstjes..

En dan nog je krijgt een soort string met komma gescheiden waarden. Moet je weer met explode() gaan klooien ;-)

@ts

Je kunt in de view mijn oplossing gewoon gebruiken al wordt het wel wat omslachtiger..
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
<?php
$user_id
= null;

while ($row = mysqli_fetch_assoc($result)) {
    if($user_id !== $row['id'] {
        // start with new user
        echo 'username: ' . $row['username'] . '<br>';
        echo 'groups:';

        $user_id = $row['id'];
    }

    
    echo ' <a href="groups.php?id=' . $row['group_id'] . '">' . $row['group_name'] . '</a>';
}
Gewijzigd op 10/01/2020 06:08:04 door Frank Nietbelangrijk
 
Jan R

Jan R

10/01/2020 07:02:56
Quote Anchor link
Ivo P op 09/01/2020 10:48:51:
waarom een subquery. Waarom niet als---


Komt op hetzelfde neer. niet aan gedacht :)


Toevoeging op 10/01/2020 07:04:45:

Frank Nietbelangrijk op 10/01/2020 05:53:43:
En dan nog je krijgt een soort string met komma gescheiden waarden. Moet je weer met explode() gaan klooien ;-)


Hangt van het doel af. Bij mij is komma ideaal. Dan staat er Webbeheerder, toernooileider

Jan
 



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.