Query probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.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 »

Back-end ontwikkelaar

Functie omschrijving Wil jij meebouwen aan diverse databasesystemen in een klein bedrijf met een platte organisatie? In een team van ruim 10 ontwikkelaars wordt er aan diverse ICT oplossingen gewerkt. Jouw taken hierbij zullen bestaan uit: Het onderhouden en door-ontwikkelen van bestaande databases. Denk hierbij aan schema verbeteringen en performance-tuning. Bij nieuwe ontwikkelingen ga jij ook bezig met het bouwen van het databaseschema. Omdat je in een klein team werkt zal je ook de C# routine verder uitbouwen en ontwikkelen. Ook kan je meedraaien in algemene refactory-, ontwikkel- of testwerkzaamheden. Je zal voornamelijk gebruik maken van de volgende technieken: .NET

Bekijk vacature »

Lead C++ Developer

De rol van Lead C++ Developer Als Lead C++ developer bij KUBUS word je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de desktop applicaties van BIMcollab, ons platform voor 3D model-validatie en issue-management bedoeld om de kwaliteit van 3D design-modellen voor gebouwen te verbeteren. Betere 3D modellen leiden tot betere gebouwen, dus zo draag je bij aan verduurzaming van de gebouwde omgeving met slimmer gebruik van materialen, minder verspilling en energie-efficiënte gebouwen. Een goede gebruikerservaring staat bij ons hoog in het vaandel; we gaan in onze ontwikkeling voor innovatie en kwaliteit. In je rol als

Bekijk vacature »

SQL ontwikkelaar

Functieomschrijving Voor een gave werkgever in regio Breda zijn wij per direct op zoek naar een SQL ontwikkelaar/ functioneel consultant. Hier wordt jij mede verantwoordelijk voor zowel de design en implementatie van SQL-databases als voor het verstaan van de processen van klanten naar het vertalen van deze processen naar IT-oplossingen. Jouw takenpakket komt als volgt uit te zien: Je test de ontwikkelde oplossingen om er zeker van te zijn dat deze voldoen aan de functionele specificaties en de behoeften van de organisatie; Je ontwerpt, ontwikkelt en implementeert SQL-databases om de data behoeften van de organisatie te ondersteunen; Je stelt op

Bekijk vacature »

Backend Developer Integraties API HBO REST

Samengevat: Deze werkgever is een IT-consultancy. Wil jij werken als Backend Developer Integraties? Heb jij kennis van gangbare berichtformaten? Vaste baan: Backend Developer Integraties API HBO €3.100 - €4.400 Zij bieden innovatieve oplossingen die bedrijven efficiënter en wendbaarder maken, waardoor onze klanten zich net zo snel kunnen ontwikkelen als de business van hen vraagt. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om de inzet van technologie. Deze werkgever staat open voor elke nieuwe trend. Onze systemen zijn groot en ingewikkeld. Hou jij van diepgang

Bekijk vacature »

.NET software developer

Functie omschrijving Voor een gewilde werkgever in omgeving Roosendaal zijn wij op zoek naar een back-end software developer met een aantal jaar werkervaring. Je krijgt een plekje in het workflow team en je zal betrokken worden bij het bouwen van nieuwe software, en het optimaliseren van bestaande code. Je werkt bij dit bedrijf in een Scrum team waarin je soms klantcontact hebt. Jouw werkzaamheden zullen er als volgt uit zien: Je krijgt een plekje op de in-house IT afdeling. Deze afdeling bestaat uit zo'n 12 collega's, verdeeld over verschillende specialisaties (BI, Beheer, Business software & workflow). De vacature staat open

Bekijk vacature »

Front-end developer E-Commere

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als front-end developer heb je een adviserende rol en sta je aan het eindpunt van alles wat met designs te maken heeft. Je overlegt met klanten en collega’s, en zet je in om ideeen om te zetten tot unieke concepten. Je bent het aanspreekpunt voor de klant en bewaakt tevens de planning. Eisen

Bekijk vacature »

Trainee pega developer

Wil jij een mooie stap maken in jouw carrière? Mooi! Bij De Mandemakers Groep haal je binnen 6 maanden je CSA- en CSSA-certificaten, waarna jij aan de slag kan als Pega-developer in ons IT-team. Achter de schermen zorg jij ervoor dat collega’s efficiënt werken en klanten iedere dag beter geholpen worden. Wil jij daaraan bijdragen? En jouw ICT-skills ontwikkelen? Lees dan snel verder en solliciteer vandaag nog als trainee Pega-developer. Wat ga je doen? Als trainee Pega developer leiden wij je op tot gecertificeerd software developer voor het low-code platform PegaSystems. In de training ben je verantwoordelijk voor een te

Bekijk vacature »

Senior Java developer

Dit ga je doen Jouw taken als Senior Java Developer zijn: Het maken van strategische keuzes omtrent de nieuwbouw van applicaties; Het maken van technische ontwerpen; Hands-on mee ontwikkelen met het team (met o.a. Java FX, JDBC, SQL, REST, Jax-RS, JSON, Maven, JUnit en Spring (boot)); Reviewen van code en feedback geven op collega developers; Analyseren en oplossen van bugs/incidenten door het onderlinge verband te kunnen leggen van verschillende losstaande systemen. Hier ga je werken Het bedrijf waar je als Senior Java Developer komt te werken staat internationaal bekend om het testen van bodemstructuren door middel van echotechnieken en beeldherkenning.

Bekijk vacature »

Lead Front-end developer

Functie Hun huidige applicatie worden ontwikkeld in o.a. React, Redux, TypeScript. Ze werken graag met de nieuwste technieken en tooling en zoeken ook developers die hier proactief op zoek naar gaan. Als senior/lead developer ben je een kartrekker in het team. Naast het meedenken over bijvoorbeeld de architectuur of toepassing van nieuwe technieken krijg je ook veel tijd om de meer junior (front-end) developers te begeleiden. Zo kun je bijvoorbeeld 1 dag in de week met 2 collega’s bezig zijn om samen met hen te kijken naar hun ontwikkeling, doelstellingen en uiteraard de gewenste begeleiding hierin. Hiernaast sta je als

Bekijk vacature »

PHP Developer

Functieomschrijving Vanuit het hoofdkantoor in de regio van Bergen op Zoom ben je als PHP Developer niet alleen gefocust op het ontwikkelen van Software. Daarnaast ben je ook voortdurend bezig met het zoeken naar nieuwe mogelijkheden en innovaties die essentieel kunnen zijn voor de efficiëntie van software ontwikkeling. Je deelt veel kennis en informatie met het team en ontvangt deze dan ook graag terug. Techstack: PHP, Symfony & mySQL. Bedrijfsprofiel Deze uitdagende opdrachtgever is ruim 20 jaar actief in de regio Bergen op Zoom. Het vooruitstrevende team staat de hele dag voor je klaar om je te helpen en ondersteunen.

Bekijk vacature »

Full Stack .NET Developer

Dit ga je doen Als developer nieuwe gave features ontwikkelen; Werken met technieken als C#, Angular 12 en Javascript,; Maken van technische keuzes en beslissingen over de architectuur; Junior collega's coachen; Initiatief nemen voor nieuwe technische mogelijkheden; Je bent een belangrijke schakel - en vindt het leuk - om te schakelen met de business. Hier ga je werken In een team van 7 professionals ben je als Full Stack .NET Developer verantwoordelijk voor het ontwikkelen van applicaties voor het grootste inhouse product: een applicatie voor alles omtrent hypotheken. De programmeertaal die je hierbij beheerst is C#. Wil je van meerwaarde

Bekijk vacature »

Software developer - senior

Functie omschrijving Voor een echt softwarebedrijf in omgeving Gouda zijn wij op zoek naar versterking voor de afdeling Software Development! Ben jij op zoek naar een werkgever waar meerdere software developers werken aan interessante projecten? Ben jij op zoek naar een werkgever waar je onderdeel wordt van een team dat echt passie heeft voor het ontwikkelen van software? Dan ben je hier aan het juiste adres! Als softwareontwikkelaar kom je terecht bij een onafhankelijk, door kwaliteit gedreven, doortastend en daarbij op een Agile wijze werkend bedrijf. Ben jij een expert in het vertalen van Componenten van Functionaliteit naar Business lagen?

Bekijk vacature »

Oracle APEX Ontwikkelaar (3.500-6.000 euro)

Bedrijfsomschrijving Ben jij een getalenteerde Oracle APEX ontwikkelaar met minimaal één jaar ervaring in het ontwikkelen van Oracle APEX-applicaties? Ben je gepassioneerd over het ontwikkelen van bedrijfskritische oplossingen en wil je werken bij een toonaangevend consultancybedrijf? Dan zijn wij op zoek naar jou! Deze organisatie beschikt over zowel inhouse als externe projecten, maar bovenal over een sterk team en netwerk van opdrachten waardoor jij jezelf verder kunt ontwikkelen. Het team bestaat uit een aantal junior en medior developers, maar vooral uit senioren. De business unit managers binnen het team zijn mensen die hun vak verstaan en zelf als Oracle APEX

Bekijk vacature »

PHP Developer - medior functie

Functieomschrijving Ben jij innovatief en wil jij je kennis graag delen met jouw nieuwe collega's? Lees dan snel verder! Voor een leuke opdrachtgever in de omgeving van Roosendaal zoeken wij een Symfony developer. Of je nou junior, medior of senior bent, je krijgt hier alle vrijheid en verantwoordelijkheid om jouw eigen loopbaan te ontwikkelen. Je gaat je hier bezig houden met en inspelen op de actualiteiten van jouw vakgebied. Techstack: Symfony, PHP, mySQL. Kennis van Svelte is helemaal mooi meegenomen. Bedrijfsprofiel Al sinds '99 is dit webbureau actief. De kernwaarden binnen het bedrijf zijn integer, dienstbaar en deskundig. Je komt

Bekijk vacature »
Roel

roel

05/01/2006 09:09:00
Quote Anchor link
Hallo ik ben met een lastige query bezig en kom er niet meer uit.

De tabellen zien er ongeveer zo uit:

Tabel 1 naam: een

een_id getal1 getal2 getal3 getal4 getal5 getal6
-------------------------------------------------------
44 21 22 23 47 84 98
45 22 45 47 42
46 11 41 21 45
47 22
48 84 45 21

Tabel 2 naam: twee

twee_id Naam Bedrijf tel een_id
---------------------------------------------------
1 Henks Mooi 0124 21
2 frits groot 7178 48
3 Roel Klein 7431 47
4 Gekkie stom 7442 22

Okee uitleg:
Ik wil graag wanneer je een bedrijf zoekt moet 'een_id' : 48 dat je dan ook de bedrijven vindt met de id's die horen bij een_id 48.

In dit geval wanneer ik zou zoeken op 48 zou ik de bedrijven 'frits' & 'Henks'moeten vinden.

De query die ik nu gebruik (werkt wel maar verkeerde uitslag) is dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php  
SELECT * FROM een, twee WHERE (een.een_id = 48 AND twee.twee_id = 48 OR twee.een_id =
 een.getal1 OR twee.een_id = een.getal2 OR twee.een_id = een.getal3 OR  
twee.een_id = een.getal4 OR twee.een_id = een.getal5 OR twee.een_id = een.getal6 )
?>


Met deze query krijg ik heel veel bedrijven, ook zitten hier veel dubbelen bij. Het word een zoek query om bedrijven te vinden. Nu heeft elk bedrijf een 'een_id'
Maar ik wil hebben dat het bedrijf ook op een aantal andere een_id's word gevonden.

Daarom heb ik een extra tabel gemaakt waar ik bepaalde een_id's aan elkaar koppel. Ik moet in de
query er nu voor zorgen dat wanneer op 48 word gezocht ook de bedrijven vindt die 84, 45 of 21 als een_id hebben.

Ik heb overal al lopen zoeken maar zit echt vast nu. Ik had dit al eerder gepost, toen is er niks uitgekomen omdat men dacht dat de database niet goed was genormaliseerd. De database kan niet anders en is correct genormaliseerd. Ik wou graag weten hoe ik een dergelijke query kan maken.

Mvg,
Roel
 
PHP hulp

PHP hulp

17/11/2024 16:49:02
 
Foton

foton

05/01/2006 09:56:00
Quote Anchor link
Hallo,

Tabel "een" lijk mij niet een goede tabel om bedrijven aan elkaar te koppelen.

Je moet een koppel tabel maken.
In dit geval koppelt de tabel dan met zich zelf.

Koppel tabel "een"

bedrijf_id bedrijf2_id
22 48
22 55
22 56
22 60
23 45
24 55
24 77
.... ....

Dus bedrijf 22 is gekoppeld aan bedrijf 48 (en anders om).
Gewijzigd op 05/01/2006 09:58:00 door foton
 
Foton

foton

05/01/2006 10:00:00
Quote Anchor link
Om dubbele records te voorkomen kun je GROUP BY in je query gebruiken.
 
Roel

roel

05/01/2006 10:01:00
Quote Anchor link
Op die manier word de database groot & traag omdat wel duizend bedrijven hetzelfde "een_id" kunnen hebben.
 
Jan Koehoorn

Jan Koehoorn

05/01/2006 10:09:00
Quote Anchor link
Probeer hem zo eens:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
SELECT *
FROM een, twee
WHERE (
    een.een_id = 48 AND
    (twee.twee_id = 48 OR
    twee.een_id = een.getal1 OR
    twee.een_id = een.getal2 OR
    twee.een_id = een.getal3 OR
    twee.een_id = een.getal4 OR
    twee.een_id = een.getal5 OR
    twee.een_id = een.getal6))
?>
 
Foton

foton

05/01/2006 10:09:00
Quote Anchor link
-----------------------------------------------------------
Tabel 1 naam: een

een_id getal1 getal2 getal3 getal4 getal5 getal6
-----------------------------------------------------------

getal1, getal2, getal3, getal4.....etc, in deze velden staan toch getallen die naar een bedrijf verwijzen?
 
Roel

roel

05/01/2006 10:15:00
Quote Anchor link
getal1 getal2 getal3 getal4 getal5 getal6 zijn vaste gegevens. Deze zijn niet gekoppeld aan 1 bedrijf. Meerdere bedrijven kunnen het zelfde gegeven hebben.

Jan Koehoorn: Ik krijg deze error met je query:

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /usr/home/------/domains/-------/public_html/bedrijftest.php on line 23

Dus de query lijkt niet goed te zijn..
Gewijzigd op 05/01/2006 10:16:00 door roel
 
Foton

foton

05/01/2006 10:19:00
Quote Anchor link
------------------------------------------------------------
Ik had dit al eerder gepost, toen is er niks uitgekomen omdat men dacht dat de database niet goed was genormaliseerd.
------------------------------------------------------------

Nou, volgens mij is 'ie ook niet genormaliseerd.


------------------------------------------------------------
De database kan niet anders en is correct genormaliseerd.
------------------------------------------------------------

Naar mijn mening dus niet.

Wat als nou een bedrijf aan 7 of meer bedrijven wilt koppelen? Ga je dan steeds een nieuw veld toevoegen? Niet echt netjes lijkt mij.
Ook zul je veel lege velden krijgen, wanneer je een bedrijf maar aan een paar andere koppelt.
Voor lege velden wordt ook ruimte gereserveerd.
 
Foton

foton

05/01/2006 10:24:00
Quote Anchor link
-----------------------------------------------------
Op die manier word de database groot & traag omdat wel duizend bedrijven hetzelfde "een_id" kunnen hebben.
-----------------------------------------------------

-----------------------------------------------------
getal1 getal2 getal3 getal4 getal5 getal6 zijn vaste gegevens. Deze zijn niet gekoppeld aan 1 bedrijf. Meerdere bedrijven kunnen het zelfde gegeven hebben.
-----------------------------------------------------

Hmmmm...... bij mij sla je dus de gevens dubbel op? Idd, maar met jouw methode doe je hetzelfde.... maar dan in het kwadraat :-)
 
Roel

roel

05/01/2006 10:29:00
Quote Anchor link
Nee bij mij sla je juist geen gegevens dubbel op. De tabel "een" staan nummers aan andere nummers gekoppeld. Deze gegevens zijn vaste gegevens en zijn dus eenmalig ingevoerd.

In tabel "twee" staan bedrijven (is dus variabel), hieraan koppel je een een_id. Maar als ik een bedrijf en ik zoek op id 48 wil ik ook de bedrijven kunnen vinden die in tabel "een" hieraan zijn gekoppeld.
 
Foton

foton

05/01/2006 10:35:00
Quote Anchor link
Met deze tabel kun je een bedrijf aan maximaal 6 andere bedrijven koppelen, maar wat als je een bedrijf aan 20 andere bedrijven wilt koppelen (of aan 263 bedrijven)? Ga dan velden toevoegen?

Tabel 1 naam: een

een_id getal1 getal2 getal3 .... getal262 getal263

??
 
Roel

roel

05/01/2006 10:44:00
Quote Anchor link
Jah.. De echte tabel is ook een stuk groter (tot getal 33)! Je koppelt geen bedrijven aan elkaar. Ik koppel nummers aan elkaar. En een nummer koppel ik weer aan een bedrijf. Een bedrijf kan maar 1 nummer hebben, en in tabel "een" koppel ik deze aan andere nummers.

Ik weet dat het ingewikkeld klinkt (en omslachtig), maar als ik de hele database hier neer zou leggen werd het een grote post :P

Daarom zou ik graag een hebben dat mijn vraag werd beandwoord (de query :P) en niet of de database nu wel of niet goed in elkaar zit..
 
Jan Koehoorn

Jan Koehoorn

05/01/2006 10:52:00
Quote Anchor link
roel:
getal1 getal2 getal3 getal4 getal5 getal6 zijn vaste gegevens. Deze zijn niet gekoppeld aan 1 bedrijf. Meerdere bedrijven kunnen het zelfde gegeven hebben.

Jan Koehoorn: Ik krijg deze error met je query:

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /usr/home/------/domains/-------/public_html/bedrijftest.php on line 23

Dus de query lijkt niet goed te zijn..


Echo de query eens naar je scherm? Wat krijg je dan te zien?
 
Foton

foton

05/01/2006 11:04:00
Quote Anchor link
Ok ok....
Als ik zeg dat ik een bedrijf aan een bedrijf koppel, dan bedoel duidelijk niet de naam van het bedrijf, maar het id van de bedrijf (het nummer dus).

-----------------------------------------------------
Op die manier word de database groot & traag omdat wel duizend bedrijven hetzelfde "een_id" kunnen hebben.
-----------------------------------------------------
Dus niet.... bij mijn manier heb je maar 2 velden.
Wat dus veel sneller te doorzoeken is.
Ook zijn de queries in dit geval makkelijker te schrijven.


-----------------------------------------------------
Jah.. De echte tabel is ook een stuk groter (tot getal 33)!
-----------------------------------------------------
Je geeft nu zelf al aan dat de tabel van jou zelf ook al een stuk groter is.
Je zult nu ook veel lege velden krijgen wanneer je bijvoorbeeld een bedrijf maar aan 1 bedrijf koppelt, voor lege velden wordt enigzins ook ruimte voor gereserveerd.


Neem van mij aan dat die database van jou niet goed is genormaliseerd.
Tevens zal het langzamer gaan werken wanneer er veel gegevens in komen te staan.
Je hebt nu al problemen met het schrijven van queries, omdat de manier waarop je nu werkt nogal omslachtig is.
Elke keer dat je een record aanmaakt reserveer je ruimte voor 33 velden. Het is zonde dat je al die ruimte in jou geval niet zal gaan gebruiken.

Mijn methode is gewoon simpeler, sneller en makkelijker uit te breiden. Het maakt niet uit of je een bedrijf dan aan 1 of aan 1000 andere bedrijven koppelt.... je hebt in dat geval geen lege velden. Tevens is het schrijven van een query voor mijn tabel een stuk makkelijker.


Maar ja, van mij mag je lekker doorwerken zoals je nu werkt.
Ik ben niet de eerste die heeft gezegd dat die database van jou niet goed genormaliseerd is.
Ik mag hopen dat je er later zelf ook achterkomt.
(je merkt het nu al bij het schrijven van queries, later bij de database performance).


Ok.... succes er mee

ps: gebruik een GROUP BY in je query als dubbele gegevens wilt vermijden.
Gewijzigd op 05/01/2006 11:08:00 door foton
 

05/01/2006 11:05:00
Quote Anchor link
IK doen het meestal zo

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
SELECT een.*, twee.*
FROM een, twee
WHERE (
    een.een_id = 48 AND
    (twee.twee_id = 48 OR
    twee.een_id = een.getal1 OR
    twee.een_id = een.getal2 OR
    twee.een_id = een.getal3 OR
    twee.een_id = een.getal4 OR
    twee.een_id = een.getal5 OR
    twee.een_id = een.getal6))
?>
 
Roel

roel

05/01/2006 11:20:00
Quote Anchor link
Klaasjan:
IK doen het meestal zo

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
SELECT een.*, twee.*
FROM een, twee
WHERE (
    een.een_id = 48 AND
    (twee.twee_id = 48 OR
    twee.een_id = een.getal1 OR
    twee.een_id = een.getal2 OR
    twee.een_id = een.getal3 OR
    twee.een_id = een.getal4 OR
    twee.een_id = een.getal5 OR
    twee.een_id = een.getal6))
?>


THX dude deze werkt perfect!
 
Foton

foton

05/01/2006 11:24:00
Quote Anchor link
Omdat ik toch zo graag wil helpen :-)
Maar helaas niet op de manier die ik had gehoopt :-(

Even uit mijn hoofd, dus ik weet niet zeker of het werkt.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
SELECT naam
FROM twee
WHERE
    een_id IN  
         (SELECT getal1, getal2, ....
          FROM een
          WHERE een_id = 48)
?>
 
Foton

foton

05/01/2006 11:25:00
Quote Anchor link
Ok..... probleem al opgelost dus

mooi :-)
 



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.