MySQL Query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Fullstack Software Developer

Bedrijfsomschrijving Functieomschrijving Java ontwerpen, bouwen en testen (T-shaped). Als senior ontwikkelaar ben je bekend in zowel de back-end als de frontend van een applicatie. Angular, Continious Delivery / Integration. Een ervaren iemand die de leiding kan nemen, een weg vindt in nieuwe situaties, en in oude applicaties. Initiatiefrijk, bekend met de (technische) omgevingen die we bij duo gebruiken, niet te beroerd om collega’s te helpen. Als senior programmeur in staat om op te treden als lead programmeur. Ondersteunt de testers bij de testautomatisering en minder ervaren programmeurs bij dagelijks werkzaamheden. Dit laatste met name op het gebied van Angular. Achtergrond

Bekijk vacature »

Frontend Developer Vue Nuxt HBO Javascript

Samengevat: Deze werkgever levert elke dag betere digitale gebruikerservaringen. Ben jij geschikt als frontend Developer? Heb je ervaring met Vue en Nuxt? Vaste baan: Front-End Developer HBO €3.100 - €4.600 Zij bieden opdrachtgevers een complete dienstverlening op gebied van ontwerpen en ontwikkelen van websites, zoekmachine optimalisatie, online adverteren, content marketing en conversie verbetering. Zij werken met een eigen ontwikkeld CMS. 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

Bekijk vacature »

Traineeship Fullstack developer (WO, 0 tot 3 jaar

Functie Zoals beschreven ga je vanaf start aan de slag bij een passende opdrachtgever, hierbij kijken ze echt naar jouw wensen, kennis/ervaring maar ook de reisafstand. Momenteel hebben ze meerdere klanten waarbij ze groepen hebben opgezet wat maakt dat er diverse uitdagende kansen liggen. Naast het werken bij de opdrachtgever, en het volgen van de masterclasses, zul je regelmatig met de andere trainees in contact zijn. Niet alleen op professioneel vlak maar juist ook bij de borrels en kwartaaluitjes! Kortom; een jaar lang hard aan jezelf werken in combinatie met gezelligheid en plezier. Spreek dit jou aan? Dan komen we

Bekijk vacature »

Java Developer

Functieomschrijving Are you an experienced Java Developer who wants to be challenged? Then this is your job! As a Java Developer, you are co-responsible for building custom applications within our extensive IT landscape. Development takes place on both the back-end side (Spring/JEE). Together with the IT department, you are responsible for the daily adjustments and expansions of our IT systems. In addition, you will work in small scrum teams using the Agile methodologies. Besides the realization of our in-house systems, you are responsible for the roll-out of the application (version) as well as the operational support after going live. Team

Bekijk vacature »

.NET developer

Functie Jij begint als .NET ontwikkelaar in een team met 10 andere Software Engineers. De werkzaamheden zijn afwisselend, zo kan het dat jij bezig bent met volledig nieuwe features of het door ontwikkelen van bestaande sites of shops. Wij ontwikkelen web applicaties, maar ook mobiele applicaties. Daarnaast bijt jij je soms ook van in externe koppelingen met systemen zoals een ERP. Als team is er een duidelijke focus m.b.t. het waarborgen van de performance en snelheid van webshops. Ook zijn wij expert op het gebied van configuratoren. Kortom enorm veel afwisselende werkzaamheden! Ook jouw werkplek kan afwisselend zijn. Soms heb

Bekijk vacature »

Back-End Developer in Laravel / PHP

Functie omschrijving Wij zijn op zoek naar een Medior PHP Laravel Developer voor een gaaf bedrijf in de omgeving van Amsterdam! Voor een enthousiast team die zich graag bezig houdt met softwareontwikkeling zijn wij op zoek naar versterking. Je werkt in een klein ontwikkelteam en bent zeer betrokken bij alle aspecten van de softwareoplossingen. Van het ontwerpen tot de oplevering. Binnen deze functie ga je aan de slag met het aanpassen, verbeteren en vernieuwen van de logistieke oplossingen. Je krijgt veel te maken met koppelingen naar systemen en de verzoeken van de klant. Je komt terecht in een team, waarbij

Bekijk vacature »

Developer Full Stack

Functie omschrijving Full Stack Developer gezocht! Wij zijn op zoek naar een Full Stack Developer voor een bedrijf in de regio Nijkerk. Je maakt in deze functie onderdeel uit van een groeiend team met een goede ambitie waarbij eenheid, betrokken en overtreffen de belangrijkste kernwaardes zijn. Het bedrijf werkt volgens de AGILE/SCRUM methode, wat je o.a. terug vindt in de tweewekelijkse sprints, retrospectives en een daily standup. Je takenpakket bestaat uit: Bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van een Saas applicatie; Bijdragen aan de innovatie van het bedrijf en hun klanten; Het ontwikkelen op de laatste technologie van

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 »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Account Developer

Voor Bol.com zijn wij per direct op zoek naar een Account Developer voor 32-40 uur per week op het kantoor in Utrecht. Wil jij een directe bijdrage leveren door partners van de juiste data-inzichten te voorzien en via campagnes op nieuwe platformkansen en features te wijzen? Ben jij analytisch sterk en kun jij dit vertalen naar plannen en inspirerende gesprekken? Lees dan snel verder! wat bieden wij jou Salaris van €2400 - €2600 obv 40 uur Minimaal 6 maanden Werklocatie is Utrecht Werken bij bol.com wie ben jij Jij bent commercieel gedreven en weet altijd aan de juiste knoppen te

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

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 »

Lead developer

Functie Als lead developer wordt jij verantwoordelijk voor een van onze development teams. Samen met de Software Architect bewaak jij de kwaliteit en uitvoering van onze complexe vraagstukken. Daarnaast ben jij verantwoordelijk voor het inschatten, designen en ontwikkelen van middelgrote tot grote veranderingen in de software. Ook coördineer jij het proces rondom complexe technische vraagstukken. Verder bestaat jouw takenpakket uit het volgende: – Het aansturen van jouw development team; – Het begeleiden van Junior Software Engineers; – Het maken van technische analyses m.b.t. nieuwe aanvragen en het tijdsbestek inschatten voor de uitvoering hiervan; – Het uitvoeren van de ontwikkeling van

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je hier

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 »
Dennis Mertens

Dennis Mertens

18/01/2006 17:50:00
Quote Anchor link
Ik ben bezig met een Film lijst. Hierbij kun je via de admin films toevoegen. Elke film heeft een genre en ik wil dus dat je ook een film bij een genre kan neer zetten.
Dat is allemaal heel simpel, maar een film kan meerdere genres hebben.
Ik gebruik 1 row voor de genre genaamd genre in de tabel film.
Nu kan er in die row bijv. 1-5 staan, dus Genre ID nummer 1 en ID nummer 5.
Maar nu kan ik niet met een query simpelweg controleren of een film in die genre zit.
Dit kan NIET
SELECT * FROM film WHERE genre='".$gen['id']."'
Ofzoiets.
Nu heb ik een functie gemaakt
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
    function genre($a,$b)
    {

        /* $a = ID nummer van de genre */
        /* $b = ID nummers van de genres van de film */

        $genres = @explode("-",$b);
        for($i = 0; $i <= count($genres)-1; $i++)
        {

            if($genres[$i] == $a)
                return $genres[$i];
        }
    }

?>

Die opzich goed werkt, hij geeft het ID nummer terug als die film in die genre zit alleen nu het probleem!!
Hoe maak ik die werkent via een Query?
Want
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
mysql_result(mysql_query("SELECT count(id) FROM films WHERE genre='".genre($gen['id'],genre)."'"),0);
?>

Werkt natuurlijk niet.
De functie genre heeft 2 waardes nodig.
1: ID nummer van de genre,
2: Alle genres van die film.
Maar hoe maak ik dit werkent?

Sommige zullen het wel niet snappen 8)

m.v.g
Dennis Mertens
 
PHP hulp

PHP hulp

19/04/2024 18:17:45
 
Robert Deiman

Robert Deiman

18/01/2006 17:55:00
Quote Anchor link
@ Dennis

Waarom doe je het zo moeilijk? Het is veel gemakkelijker om van filmnaam en genre een sleutel te maken. (die combinatie moet uniek zijn) en dan krijg je dus wel een nieuwe regel in je filmtabel, voor elk 2e genre van de film. Maar zo kan je wel op film selecteren. Als je dan ook nog van je filmid de auto increment weghaald en een nieuw veld, genaamd rec_id toevoegd (betekend record id) en die auto_inc maakt, hou je toch de werking met je filmid, en dan kan je veel gemakkelijker selecteren.
Zeker als je straks duizenden films in zo'n database hebt zal deze manier van werken nogal veel servercapaciteit kosten.
 
Dennis Mertens

Dennis Mertens

18/01/2006 17:56:00
Quote Anchor link
Aha en met 3 genres?
En mijn manier vind ik opzich heel simpel.
Gewijzigd op 18/01/2006 17:57:00 door Dennis Mertens
 
Dennis Mertens

Dennis Mertens

18/01/2006 18:40:00
Quote Anchor link
En je zegt dat mijn manier veel servercapiciteit kost.
Het werkt niet eens :|, dus het kost ook niks.
 
Willem vp

Willem vp

19/01/2006 09:58:00
Quote Anchor link
Dennis:
Aha en met 3 genres?
En mijn manier vind ik opzich heel simpel.
Maak een tabel 'filmgenres' aan met als velden (bijvoorbeeld) film-id en genre-id. Stel dat film ABC de genres 1, 3 en 6 heeft, dan krijg je 3 records in de tabel filmgenres:

film-id genre-id
ABC 1
ABC 3
ABC 6

Met een SELECT genre-id from filmgenres WHERE film-id = 'ABC' kun je dan opvragen in welke genres een film zit.

Met SELECT film-id from filmgenres WHERE genre-id = 1 vraag je op welke films allemaal van genre 1 zijn.

Jouw oplossing is inderdaad simpeler, maar het is veel ingewikkelder om iets met die data te doen. Als je bijvoorbeeld alle actiefilms wilt hebben moet je elk record inlezen en de string met genres verwerken. Door de koppeling tussen film en genre in een aparte tabel te zetten, heb je veel meer mogelijkheden.

Het berekenen van het aantal films in een genre (waar je oorspronkelijke vraag over ging) kan dan heel eenvoudig met:

SELECT genre-id, COUNT(*)
FROM filmgenres
GROUP BY genre-id
 
Robert Deiman

Robert Deiman

19/01/2006 10:03:00
Quote Anchor link
Dennis:
En je zegt dat mijn manier veel servercapiciteit kost.
Het werkt niet eens :|, dus het kost ook niks.


Als je straks 1000 films hebt, moet je elke film uitlezen, en kijken of het genre (of de genres) overeenkomen met waarop wordt gezocht. Je gaat PER film kijken of die overeenkomt, zo ja weergeven, zo nee, volgende film. Dit kost onnodig veel rekenkracht. Zeker wanneer je een grote database krijgt werkt jou methode nogal vertragend.
Met de methode die Willem aangaf (komt deels overeen met mijn idee, hij heeft er alleen een extra tabel bij gemaakt) SELECTEERD die alleen de films uit het genre, en hoeft er niet zoveel gerekend te worden. Daardoor is die manier veel sneller en kost die minder servercapasiteit.
Snappie?
 
Willem vp

Willem vp

19/01/2006 12:16:00
Quote Anchor link
@Robert:
Ik zou overigens niet eens een nette manier weten om het zonder extra tabel te doen. Als je die extra records aanmaakt in je film-tabel (zoals je in een eerder bericht voorstelde) dan moet je alle overige informatie dubbel gaan opslaan. dat is zonde van je disk-capaciteit (en uiteindelijk ook van je snelheid).
 
Robert Deiman

Robert Deiman

19/01/2006 12:20:00
Quote Anchor link
Klopt, het voorbeeld van mij was niet de netste, maar het ging mij er eigenlijk ook om, dat de genres niet bij elkaar in 1 kolom moesten staan (1-3-5 ofzo) Maar apart, omdat dat veel aan snelheid scheelt.
Inderdaad is mijn oplossing geen nette, en helemaal niet volgens de normalisatieregels. Maar daar was het me ook niet om te doen.
Tjah.. Je kan zo eigenlijk ook wel al zien dat er niet genormaliseerd is, dan zou het er wel anders uit zien.
 
Jan Koehoorn

Jan Koehoorn

19/01/2006 12:23:00
Quote Anchor link
Mijn ervaring is dat een koppeltabel in elke veel-op-veel relatie de beste oplossing is.
 
Robert Deiman

Robert Deiman

19/01/2006 12:27:00
Quote Anchor link
Klopt, ben ik met je eens.. het was ook geen net voorbeeld.
Ik bedacht me net trouwens nog iets. als je die genres nou zo opslaat -1-5-8- enzovoort dat betekend dat ieder genrenummer tussen 2 - staat. Als je dan je query zo doet:
$sql="SELECT * FROM film WHERE genre LIKE '%-".$gen['id']."-%'";
Kan het wel werken. Maar zoals al eerder aangegeven, moet er dan veel meer gezocht en gerekend worden en kost dat capaciteit.

EDIT: % tekens aan LIKE toegevoegd
Gewijzigd op 19/01/2006 12:28:00 door Robert Deiman
 



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.