Meerdere queries uit verschillen tabellen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Front end developer

Functie Wij zijn op zoek naar een ambitieuze, zelfsturende Front-end Expert die ons (internationale) team komt versterken. Onze huidige software development afdeling bestaat uit 7 developers en designers. Wij zijn een écht softwarehuis, dus ervaring in software development is wel echt een must. Er wordt tegelijkertijd aan meerdere projecten gewerkt, voor mooie toonaangevende klanten. Je hebt dus regelmatig te maken met deadlines en opleveringen. Een deel van onze omgeving is in Angular.JS. Dit deel wordt langzamerhand omgebouwd naar de nieuwste versie van Angular. Jouw werkzaamheden zullen bestaan uit: Het aansturen en begeleiden van jouw collega’s Het implementeren van visuele elementen

Bekijk vacature »

Ervaren PHP developer gezocht!

Functie Het team bestaat inmiddels uit zo’n 25 collega’s met specialisten op het gebied van development, data(analyse), marketing, infrastructuur en finance. Ze hebben een supermodern pand en bieden hiernaast veel vrijheid en verantwoordelijkheid. Ze doen er alles aan om jou op te gemak te stellen. Zo kun je je eigen werkplek inrichten naar persoonlijke wensen, maar gaan ze bijvoorbeeld ook jaarlijks met elkaar wintersporten en zijn er andere leuke uitjes. Als onderdeel van één van de scrumteams ga je aan de slag, samen ben je medeverantwoordelijk voor het doorontwikkelen van hun business applicatie waar het traffic team dagelijks mee werkt.

Bekijk vacature »

Front-end developer (medior/senior)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

Digitale Tovenaar Gezocht: Junior Low-code/No-code

Bedrijfsomschrijving Duik mee in een wereld vol innovatieve avonturen waar gegevens en technologie een magische symbiose aangaan! Al meer dan twee decennia lang zijn we de tovenaars achter de schermen die oplossingen creëren voor de meest complexe klantcontactvraagstukken en datagedreven software-uitdagingen. Bij ons draait het om de kracht van samenwerking en groei. We zijn een hechte vriendengroep die samen bergen verzet om elkaar én onze klanten te laten schitteren. Jouw succes is ons succes en we streven ernaar om elkaar naar nieuwe hoogten te tillen, niet voor even, maar voor altijd. We willen dat jij je helemaal thuis voelt in

Bekijk vacature »

Software Ontwikkelaar

Functie omschrijving Voor een echt familiebedrijf in de omgeving van 's-Hertogenbosch ben ik op zoek naar een Software Developer. Jij gaat in de functie van Software Developer werken met C# en .NET framework Jij gaat maatwerk software ontwikkelen en softwareoplossingen creëren. Daarnaast optimaliseer je de bestaande software. Oplossingen waar de klant echt iets aan heeft, jij krijgt er energie van op dit te realiseren. Je gaat werken in een Microsoft omgeving(ASP.NET) en gebruikt daarnaast C# en MVC. Samen met het huidige IT team binnen deze organisatie verwerk je de wensen van de klant tot een (eind)product. Bedrijfsprofiel Deze organisatie is

Bekijk vacature »

Software Developer PHP JavaScript Python HBO SQL

Samengevat: Wij zijn een softwarebedrijf voor Autodealers. Ben jij een Medior of Senior Software Developer? Heb je ervaring met PHP, JavaScript of Python? Vaste baan: Java.Developer Software HBO €3.000 - €5.200 Bij ons op de werkvloer is er een positieve en informele sfeer. Naast een goede begeleiding en een enthousiaste klantenkring biedt deze werkgever een prettige omgeving met zeer afwisselende werkzaamheden. Houd jij van aanpakken en denk je dat je deze uitdaging aankunt? Dan zoeken wij jou! Zij werken voor grote klanten. Zij doen omvangrijke projecten die we bij deze werkgever op kantoor realiseren (geen detachering). Zij werken met state-of-the-art

Bekijk vacature »

.NET Developer

Dit ga je doen Binnen het team bouw je aan een applicatie met andere .Net Developers, testers een Product Owner en een Business Analyst. Met het team wordt de backlog besproken. In overleg claim jij jouw deel en zorgt ervoor dat onderhoud en innovatie wordt gerealiseerd. Het project dat momenteel draait is het opgraden van de omgeving. Doorontwikkelen van de huidige applicatie; Overleggen met teamleden om de backlog te verdelen; Onderhouden van de huidige omgeving; Sparren met de business en het ophalen van nieuwe requirements. Hier ga je werken De organisatie is een van de grootste landelijke aanbieder van diverse

Bekijk vacature »

Implementatie specialist

Standplaats: Honselersdijk Aantal uren: 32 – 40 uur Opleidingsniveau: HBO werk- en denkniveau Ben jij de implementatie expert die onze klanten helpt bij het integreren van de Greencommerce software? Ben jij daarnaast communicatief sterk, denk jij graag in verbeteringen en heb je ervaring met ICT? Lees dan snel verder! Bedrijfsinformatie Jem-id is een grote speler op het gebied van software ontwikkeling. Zo zijn wij continu bezig met het ontwikkelen van de meest innovatieve software voor de AGF- en sierteeltsector. We creëren oplossingen die er toe doen en verbinden klanten niet alleen op technisch vlak, maar zoeken ook de verbinding in

Bekijk vacature »

Hands-on Solution Architect / Software Architect (

TenneT is hard groeiend om de onze ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Solution Architect / Software Architect op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je werkt samen met gedreven DevOps teams, bestaande uit frontend, backend en middleware developers, testers, UX-designers. Samen met de teams ben je continu op zoek naar de beste oplossingen voor onze klanten. Als Solution Architect onderzoek

Bekijk vacature »

.NET Developer Senior

Dit ga je doen Het ontwikkelen van backend applicaties in C#; Het maken van vele koppelingen met andere ERP-applicaties zoals JD Edwards en SAP; Je bent (mede) verantwoordelijk voor het opstellen van technisch ontwerpen voor de te ontwikkelen software oplossingen; Je bent gemiddeld 90% van je tijd inhouse oplossingen aan het ontwikkelen en testen. De overige 10% van je tijd ben je bij klanten op locatie om oplossingen te implementeren, klanten te begeleiden en de software verder te innoveren; Naast het zelfstandig ontwikkelen van software oplossingen ben je ook bezig met het waarborgen van je contacten bij de klant, het

Bekijk vacature »

Back-end Developer

Functie omschrijving Als Back-end Developer heb je de eer om als eerste interne developer bij deze organisatie te beginnen. Op dit moment zijn er externe developers, maar daar wil de organisatie verandering in brengen. Op termijn moet de gehele afdeling uit intern personeel bestaan. Je kan je voorstellen dat de eerste interne developer ook de nodige kennis mee moet brengen. Dat klopt. Je gaat je namelijk aan het begin bekommeren over de externe developers en uiteindelijk over je interne collega's. Verder ga je het volgende doen: Het bedenken, beheren en onderhouden van webportalen, API-koppelingen en applicaties; Je bedenkt en werkt

Bekijk vacature »

Java Ontwikkelaar

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

Senior Software Developer C++

Vacature details Vakgebied: Software/IT Opleiding: Senior Vacature ID: 13342 Introductie Do you want to work for one of the most innovative companies located in the region of Eindhoven. Currently Due to growth we are looking for a Senior Software Developer. Our client is a high-tech company with international roots and can provide you with a challenging opportunity. Functieomschrijving Responsibilities: Design, develop, and maintain high-quality software applications in C++ Collaborate with other engineers, product managers, and stakeholders to understand requirements and develop solutions Write clean, maintainable, and efficient code Conduct thorough testing and debugging to ensure high-quality software Optimize applications for

Bekijk vacature »

Medior/senior PHP ontwikkelaar E-commerce

Functie Het software development team bestaat momenteel 5 scrum teams . Ieder team heeft een eigen SCRUM Master en eigen tester. Zij werken voornamelijk in PHP en met hun eigen geschreven framework wat Symfony based is . Jij bent samen met je collega’s verantwoordelijk voor het interne softwaresysteem en alle projecten die daar omheen lopen. Alles wat jij ontwikkelt, wordt direct toegepast en uitgerold (wereldwijd). Dit maakt jouw werk tastbaar en uitdagend! Een greep uit jouw werkzaamheden: Toevoegen en ontwikkelen van nieuwe functionaliteiten Logistieke software ontwikkelen voor intern gebruik Tientallen gigabytes aan data inzichtelijk maken Altijd op zoek gaan naar

Bekijk vacature »

.NET developer

Functie Heb jij veel kennis van ASP.NET Webforms en wil jij juist de overstap maken naar ASP.NET Core? Wij zijn per direct op zoek naar een ervaren .NET Webdeveloper die met ons samen ons platform wilt herschrijven van ASP.NET Webforms naar ASP.NET Core. Voor jou de unieke kans om met ons samen te innoveren en kennis op te doen van de nieuwste technieken binnen de Microsoft Stack. Wij hebben een development team met 10 IT specialisten bestaande uit onder andere 4 backend .NET developers en twee front-end developers. Wij zijn continu bezig om ons als team en bedrijf te blijven

Bekijk vacature »
Karina Six

Karina Six

05/12/2021 16:51:57
Quote Anchor link
Hi! Ik ben sinds enkele weken bezig met PHP te leren, nu zit ik met een issue waar ik maar niet uit geraak.

Ik zou graag twee id's uit twee verschillende tabellen selecteren. En met deze id's een derde tabel vullen. De id's zijn dus eigenlijk foreign keys (als ik het goed heb). Aan de hand van een ingevuld formulier verkrijg ik de info 'Productnaam' (uit tabel Product) en 'Voornaam','Familienaam' (uit tabel Klant) en het Aantal.

Dus met een 'Select'-query dacht ik zo de id's te verkrijgen uit de twee verschillende tabellen. Het lukt me niet om deze samen in één query te zetten. Aangezien de tabellen geen gemeenschappelijke kolommen hebben, leek een JOIN geen optie. Ik dacht ze dus in twee aparte te zetten? (zie stukje code onderaan)

BV:
tabellen

Product: id, productnaam, prijs
Klant: id, voornaam, familienaam
aankoop: klantId, productId, aantal

Tips om mij verder op weg te helpen?

Vriendelijk bedankt,
Karina

Ter illustratie: (Ik heb ook al geprobeerd de twee queries in één variable onder te brengen gescheiden met een ' ; ' maar dit zorgde voor wat errors.)

public function getIds(string $familienaam, string $voornaam, string $productnaam, int $aantal)
{
$sql = "select id as productId from producten where productnaam = :productnaam";
$sql2 = "select id as klantId from modules where familienaam = :familienaam and voornaam = :voornaam";
 
PHP hulp

PHP hulp

08/11/2024 10:54:52
 
Ivo P

Ivo P

05/12/2021 17:26:24
Quote Anchor link
om je formulier te vullen, heb je 2 query's nodig:
1 om je producten op te halen
1 om je klanten te vinden.

De aankopen kun je wel in 1 query ophalen: (voorbeeld voor klant met id = 123)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
SELECT k.id klantid,
       k.voornaam,
       k.achternaam,
       p.id productid,
       p.productnaam
FROM Klant k
JOIN aankoop ak ON k.id = ak.klantId
JOIN Product p ON p.id = ak.productId
WHERE k.id = 123


Je moet trouwens de prijs ook opslaan in de aankoop: als je later de prijs aanpast, weet je niet meer wat de klant moe(s)t betalen
 
Karina Six

Karina Six

05/12/2021 19:51:54
Quote Anchor link
Dag Ivo, hartelijk bedankt voor de feedback! Ik krijg nog steeds een foutmelding:

Warning: foreach() argument must be of type array|object, bool given in /XXX/doc.php on line 55

Zou het kunnen omdat er geen resultaten in de array terecht komen? Ter info: de tabel aankopen is voorlopig leeg, maar aangezien ik niets ophaal uit die tabel zou dit geen problemen mogen opleveren?

Hier het volledige deel. Zoals je zit wil ik met de resultaten een object maken.

public function getArray(string $familienaam, string $voornaam, string $product, int $aantal)
{
$sql = "select k.id as klantId,
k.voornaam,
k.familienaam,
p.id as productId,
p.naam,
p.prijs
from klanten k
join aankopen ak ON k.id = ak.persoonId
join producten p ON p.id = pu.productId
where p.naam = :product and k.familienaam = :familienaam and k.voornaam = :voornaam";
$dbh = new PDO($this->dbConn, $this->dbUsername, $this->dbPassword);

$stmt = $dbh->prepare($sql);

$stmt->execute(array(
':familienaam' => $familienaam,
':voornaam' => $voornaam,
':product' => $product
));


$resultSet = $stmt->fetch(PDO::FETCH_ASSOC);

$lijst = array();
foreach ($resultSet as $rij) {
$aankoop = new Aankoop(
(int)$rij["klantId"],
$rij["voornaam"],
$rij["familienaam"],
$rij["productId"],
$rij["naam"],
$rij["prijs"]);
array_push($lijst, $aankoop);
}

$dbh = null;
return $lijst;
}
 
- Ariën  -
Beheerder

- Ariën -

05/12/2021 20:03:05
Quote Anchor link
We hebben ook code-tags voor codes.

Wat zegt var_dump?
 
Karina Six

Karina Six

05/12/2021 20:19:24
Quote Anchor link
- Ariën - op 05/12/2021 20:03:05:
We hebben ook code-tags voor codes.

Wat zegt var_dump?


Hi,
Wanneer ik var_dump doe bij $resultSet, krijg ik dit. De variabelen in de foreach-loop hebben bijgevolg geen waarde.

bool(false)
Warning: foreach() argument must be of type array|object, bool given in /opt/XX/doc.php on line 56
array(0) { }
Warning: Undefined variable $punten in /opt/XXX.php on line 67
NULL
 
- Ariën  -
Beheerder

- Ariën -

05/12/2021 20:31:42
Quote Anchor link
Bouw eens foutafhandeling in?

En plaats je code graag tussen codetags.
 
Karina Six

Karina Six

06/12/2021 19:10:33
Quote Anchor link
- Ariën - op 05/12/2021 20:31:42:
Bouw eens foutafhandeling in?

En plaats je code graag tussen codetags.


Hi, blijkt dat mijn SQL-statement niet correct is. Als ik ze test in myPhpAdmin, blijkt één kolomn bij elke waarde 'null' te geven, al zijn er gegevens voor deze id. Ook wanneer ik de beide 'RIGHT JOIN' doe of 'LEFT JOIN - RIGHT JOIN', 'RIGHT JOIN-LEFT JOIN'.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
SELECT k.id,
p.id
from klanten k
LEFT JOIN aankopen ak on k.id = ak.klantId
LEFT JOIN producten p on p.id = ak.productId
 
Adoptive Solution

Adoptive Solution

06/12/2021 20:20:46
 
Karina Six

Karina Six

06/12/2021 21:05:40
Quote Anchor link
Adoptive Solution op 06/12/2021 20:20:46:


Hi, wanneer ik inner join gebruik, krijg ik geen resultaten terug. Ter info: de tabel aankopen is voorlopig leeg. Dus wat ik wil verkrijgen is de id van zowel klanten als producten aan de hand van een invulformulier.

BV. Ik vul in formulier: Klant Peeters koopt Wasmachine. Met een 'where'-statement wil ik zo de juist ID's verkrijgen uit de twee tabellen. ik krijg hierbij nog steeds een foutmelding ter hoogte van 'p.id where ... '

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
SELECT k.id where familienaam = :familienaam,
p.id where productnaam = :productnaam
from klanten k
INNER JOIN aankopen ak on k.id = ak.klantId
INNER JOIN producten p on p.id = ak.productId
 
Ivo P

Ivo P

07/12/2021 10:45:59
Quote Anchor link
Er is geen link tussen die klant en dat product: hij heeft hem nog niet gekocht.

Nu zal er vast wel een of andere exotische query mogelijk zijn om middels een of andere outer join tussen klant en producten alles van beide te verkrijgen, maar dan waarschijnlijk in de aantallen "veel te veel".

Dus iets met 1000 producten en 200 klanten levert je 200.000 records met alle mogelijke combinaties op.

Veel eenvoudiger is het om je lijstje te bouwen met 2 losse query's:
een om alle producten op te halen
en een om alle klanten op te halen (al heb je hopelijk snel zo veel klanten dat je die niet allemaal in 1 lijstje wilt tonen).

Daarna schiet je klant_id en product_id (plus wat info als datum en prijs en aantallen) in de tabel Aankopen.
En dan kun je info ophalen over "wie" en "wat" gekocht is.
 
Karina Six

Karina Six

07/12/2021 13:07:52
Quote Anchor link
Ivo P op 07/12/2021 10:45:59:
Er is geen link tussen die klant en dat product: hij heeft hem nog niet gekocht.

Nu zal er vast wel een of andere exotische query mogelijk zijn om middels een of andere outer join tussen klant en producten alles van beide te verkrijgen, maar dan waarschijnlijk in de aantallen "veel te veel".

Dus iets met 1000 producten en 200 klanten levert je 200.000 records met alle mogelijke combinaties op.

Veel eenvoudiger is het om je lijstje te bouwen met 2 losse query's:
een om alle producten op te halen
en een om alle klanten op te halen (al heb je hopelijk snel zo veel klanten dat je die niet allemaal in 1 lijstje wilt tonen).

Daarna schiet je klant_id en product_id (plus wat info als datum en prijs en aantallen) in de tabel Aankopen.
En dan kun je info ophalen over "wie" en "wat" gekocht is.

Dag Ivo,

Bedankt! Dat brengt mij bij een volgende vraag, kan ik deze twee queries in één variable onderbrengen? Ik zou ze graag in één functie uitwerken en met die gegevens een object maken.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
            $sql = "select k.id as persoonId from klanten k where familienaam = :familienaam;  
            select p.id as productId from product p where naam = :naam";
 
Adoptive Solution

Adoptive Solution

07/12/2021 13:10:50
 
- Ariën  -
Beheerder

- Ariën -

15/12/2021 11:39:52
Quote Anchor link
*Spambericht verwijderd*
 



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.