Meerdere id's INNER JOIN

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Programmeur / Developer

Voor een familiebedrijf in Doetinchem, actief in de machinebouw voor de food-sector, zijn wij op zoek naar een programmeur / developer. In deze functie ben je werkzaam in een team van 5 medewerkers. Je werkzaamheden bestaan onder andere uit het verhelderen van requirements vanuit de opdrachtgever, de klant en de afdeling ontwikkeling. Je verricht haalbaarheidsstudies en werkt specificaties uit die je afstemt met de opdrachtgever. Je ontwerpt design in software en stemt af met je collega's. De huidige vision-systemen zijn geschreven in C software, welke draait op een CUDA platform. Je schrijft en codeert software en zal gaan testdraaien. Tot

Bekijk vacature »

Full Stack PHP Developer

Functieomschrijving Ervaren PHP Developer gezocht! Wij zijn op zoek naar een ervaren PHP Developer die het IT team van een organisatie in de regio Ermelo gaat versterken. Voor deze functie zijn we op zoek naar een enthousiaste en breed georiënteerde IT-er die deze innovatieve organisatie nog een stap verder gaat brengen. Wij zijn op zoek naar iemand die communicatief goed is en die zelfstandig problemen op kan lossen. Je bent verantwoordelijk voor het samenwerken met een externe partij het is hierbij jouw taak om deze partij uit te dagen op het geleverde werk. Het schrijven van concepten aan de AI

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: 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 je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

(Junior) PHP Ontwikkelaar bij een retail bedrijf i

Bedrijfsomschrijving Ben jij een ervaren PHP ontwikkelaar met een passie voor retail en ICT? Wil jij werken in een team dat zich bezighoudt met het ontwikkelen van uitdagende applicaties voor een groot retailbedrijf in Delft? Dan zijn zij op zoek naar jou! Functieomschrijving Als PHP Ontwikkelaar werk je in een team aan de ontwikkeling van applicaties die door de gehele organisatie worden gebruikt. Je bent verantwoordelijk voor het ontwikkelen, testen en implementeren van deze applicaties. Je werkt hierbij nauw samen met andere ontwikkelaars, projectmanagers en stakeholders binnen de organisatie. Je taken bestaan onder andere uit: Ontwikkelen van nieuwe functionaliteiten en

Bekijk vacature »

PHP developer

Functie omschrijving Voor een klein bedrijf in de buurt van Nieuwegein zijn wij per direct op zoek naar een talentvolle PHP developer. Er wordt veel ruimte geboden voor eigen initiateven, waardoor je een mooie stempel kan drukken op jouw eigen werkzaamheden (zowel operationeel als strategisch). Het bedrijf heeft middels externe programmeurs een multimedia platform ontwikkeld, maar willen geleidelijk de ontwikkeling naar binnen halen. Om die reden zoeken zij een communicatieve interne PHP developer die graag meebouwt aan het succesvolle product. Je gaat de volgende werkzaamheden verrichten: Platform beheren en programmeren (PHP, MySQL, JQuery, Javascript, XML & HTML); Communicatie en aansturing

Bekijk vacature »

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Functioneel Applicatiebeheerder

Wij van CNB zijn op zoek naar een leergierige Functioneel Applicatiebeheerder CNB is de grootste dienstverlener in de markt van bloembollen en vaste planten. In deze markt verricht CNB de volgende diensten: bemiddeling, veilen en het koelen en prepareren van bloembollen. Vanuit ons hoofdkantoor in Lisse werken bijna 100 collega’s dag in dag uit aan de bemiddeling van bloembollen. In Bovenkarspel vindt het koelen en prepareren van de bloembollen plaats. Wij zijn op zoek naar een enthousiaste Functioneel Applicatiebeheerder die naast een applicatie, ook sfeer kan bouwen! Jij: Vindt het leuk om binnen een klein IT-team aan de slag te

Bekijk vacature »

Software Ontwikkelaar PHP

Functie omschrijving Full Stack Software Ontwikkelaar gezocht! Voor een bedrijf in de regio van Ermelo zijn wij op zoek naar een Software Ontwikkelaar die gaat bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van SaaS applicatie van dit bedrijf. Hierbij ga jij voor- en samenwerken met de klanten van de organisatie, het is hierbij dus van groot belang dat je communicatief vaardig bent en dat je beschikt over beheersing van zowel de Nederlandse als Engelse taal. Bedrijfsprofiel Waar ga je werken? Altijd al in een echt familiebedrijf willen werken? Dan is dit je kans! Het bedrijf waar je komt te

Bekijk vacature »

OutSystems developer

Dit ga je doen Klanten adviseren over de mogelijkheden van OutSystems; OutSystems oplossingen ontwikkelen en implementeren; Stakeholdermanagement; Kennis en expertise up to date houden en delen met het team. Hier ga je werken Onze opdrachtgever, gevestigd in regio Amsterdam, is een innovatieve dienstverlener die zich richt op grote corporates in verschillende sectoren. Doordat je bij veel verschillende klanten aan de slag zal gaan is geen enkel project hetzelfde. De organisatie kenmerkt zich door hoge mate van professionaliteit en innovatieve oplossingen. In de rol van OutSystems developer zal jij verschillende grote klanten helpen om efficiënte OutSystems oplossingen te ontwikkelen en implementeren.

Bekijk vacature »

SQL database ontwikkelaar

Functie omschrijving Ben jij niet bang voor complexe algoritmes? Schikt het schrijven van procedures in T-SQL jouw niet af en heb jij al de nodige informatie in SQL, dan is functie precies wat voor jou! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat werken aan de complexere projecten waar jij van A tot Z bij betrokken bent. Je gaat zorg dragen voor het ontwerp, de ontwikkeling en het updaten van SQL databases. Dit doe je op basis van T-SQL. Jij bent van start tot finish betrokken bij de projecten die jij leidt. Je houdt contact met klanten en

Bekijk vacature »

Laravel developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Low Code Developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Voor een leuke opdrachtgever in omgeving Rotterdam zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten in heel het land! Wat ga je hier zoal doen? Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je kunt denken aan

Bekijk vacature »

Ervaren C#.NET programmeur

Functieomschrijving Voor een moderne werkgever in regio Prinsenbeek zijn wij op zoek naar een ervaren C#.NET programmeur die graag de uitdaging aangaat. Je houdt je bezig met het ontwikkelen van maatwerk webapplicaties voor diverse klanten, waarbij complexe processen optimaal worden ondersteund. Verder ziet jouw takenpakket er als volgt uit: Ontwikkelen en onderhouden van C#.NET-applicaties; Schrijven van hoogwaardige, herbruikbare codes; Schrijven van technische documentatie en gebruikershandleidingen; Bijdragen aan het ontwerp en de architectuur van softwaretoepassingen; Troubleshooten en oplossen van bugs in softwaretoepassingen; Werken met databases en dataopslagoplossingen; Implementeren van beveiligingsoplossingen en het waarborgen van de beveiliging van applicaties en gegevens. Bedrijfsprofiel

Bekijk vacature »

Front end developer

Functie Het team bestaat uit User Experience designers, Data Scientists en Software Engineers met passie voor hun vak. De consultants en ontwikkelaars werken volgens de Design Thinking methode waarbij de eerste stappen van ontwerp en ontwikkeling zullen samenkomen in een proof of concept. Nadat is vastgesteld dat de oplossing voldoet aan de belangrijkste behoeftes worden producten of services gevalideerd door middel van korte iteraties. Hiermee zorgen ze ervoor dat het werk voldoet aan de technische vereisten en gebruikersbehoefte. Door het inzetten van de nieuwste technologieën die toekomstbestendig zijn weten ze klanten omver te blazen. Ook geven en organiseren ze veel

Bekijk vacature »

Ervaren C#.NET developer

Functieomschrijving We zijn op zoek naar een ervaren C#.NET programmeur voor een moderne werkgever in de regio Prinsenbeek. Als programmeur zal je bezig zijn met het ontwikkelen van op maat gemaakte webapplicaties voor verschillende klanten, waarbij je ervoor zorgt dat complexe processen zo goed mogelijk worden ondersteund. Je takenpakket omvat onder andere: Werken met databases en dataopslagoplossingen, implementeren van beveiligingsoplossingen en het waarborgen van de beveiliging van applicaties en gegevens, evenals het schrijven van technische documentatie en gebruikershandleidingen. Het ontwikkelen en onderhouden van C#.NET-applicaties. Bijdragen aan het ontwerp en de architectuur van softwaretoepassingen. Het schrijven van hoogwaardige en herbruikbare codes.

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

20/04/2024 01:36:02
 
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.