MySQL Query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior Front end developer React

Functie Voor deze functie ben ik op zoek naar een enthousiaste front end developer die communicatief vaardig is. Jij wordt onderdeel van een enthousiast jong team dat werkt aan grote websites. Binnen jouw rol ben jij diegene die de vertaling maakt van design naar functionele code en zorg jij voor goede experience op meerdere platformen. Dit doe je natuurlijk door gebruik te maken van Javascript, HTML, CSS en React. Daarnaast wordt er gebruik gemaakt van Webcomponents en verschillende authenticatie tools. Doordat er hier gestreefd wordt naar de beste gebruikerservaringen, wordt het product constant doorontwikkeld. Hierdoor blijven ze voor op de

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 »

Back-end Programmeur

Functieomschrijving Heb jij kort geleden je HBO ICT in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een ambitieuze werkgever in de regio van Breda zijn wij op zoek naar een Back-end programmeur met affiniteit met C#.NET, SQL en MS Access. Samen met team bestaand uit ware ICT professionals ben je verantwoordelijk voor het bouwen van maatwerk software voor hun klanten. Belangrijk is dat je kennis of ervaring hebt van C#.NET en SQL. Je toont een flexibele en sociale houding naar klanten toe. Je denkt in nieuwe mogelijkheden & gaat graag de uitdaging aan. Bedrijfsprofiel De

Bekijk vacature »

Traineeship Front-end 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 »

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

Junior .NET developer

Functie Ons programma is voor afgestudeerde enthousiastelingen die het als een uitdaging zien om met een klein dynamisch team bij de grootste bedrijven van Nederland aan de slag te gaan. Tijdens jouw dienstverband word jij begeleid door een talent manager. Het ontwikkelen van jouw talent staat hierbij centraal. Het programma doorloop je met een team van circa 8 Mede- trainees. De eerste maand start je met een fulltime inhouse opleiding. Deze staat geheel in het teken van de werkzaamheden die jij verder in het programma zult uitvoeren. Na deze opleidingsmaand ga je aan de slag in een dynamische omgeving bij

Bekijk vacature »

Lead developer

Functie Als Lead developer wordt jij onderdeel van een multidisciplinair team van circa 23 software engineers. Als team werken jullie agile en zijn termen als Continuous Integration en Continuous Delivery dagelijkse koek. Jullie werken aan uitdagende en afwisselende projecten met als doel klanten een totaal oplossing aan te kunnen bieden. Jij wordt verantwoordelijk voor complete projecten waarbij jij als verantwoordelijke zorgt dat het project op de juiste manier blijft draaien. Zo haal jij ook de requirements op bij de klant en kijk jij samen met het team en met de salesafdeling hoeveel uren hiervoor nodig zijn. Daarnaast stuur jij jouw

Bekijk vacature »

Lead javascript developer Node.js React

Functie Als fullstack JavaScript developer vind jij het uitdagend om op basis van concrete klantvragen nieuwe functionaliteiten te ontwikkelen. Bij voorkeur worden deze functionaliteiten op een bepaalde manier geprogrammeerd, zodat ze door meerdere klanten te gebruiken zijn. Je hebt dus vaak te maken met abstracte vraagstukken. Om dit te kunnen realiseren sta je nauw in contact met de product owner en/of klant. Je bent niet alleen onderdeel van het development team, maar hebt ook vaak contact met de product-owner en/of klanten om daardoor inzichten te verzamelen die leiden tot productverbeteringen. • Inzichten verzamelen bij de klant en/of product owner •

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 »

Ambitieuze Junior/Medior Low-code Developers gezoc

Bedrijfsomschrijving Transformeer bedrijven met jouw expertise in innovatieve technologie Ben je een bedreven softwareontwikkelaar met ervaring in Low-code platformen, of sta je te popelen om je in deze baanbrekende oplossing te verdiepen? Wij zijn op zoek naar jou! Ons klantenbestand groeit en we willen ons team uitbreiden met deskundige en leergierige Low-code specialisten. Is het jouw passie om organisaties te ondersteunen in hun digitale transformatie en maatwerkoplossingen te bieden met behulp van geavanceerde software? Wij zijn een vooruitstrevend bedrijf dat dagelijks werkt aan het oplossen van complexe vraagstukken om de digitale ambities van onze klanten te realiseren. Functieomschrijving Ontwikkel op

Bekijk vacature »

Full stack developer Node.js, React Remote

Functie Als fullstack JavaScript developer vind jij het uitdagend om op basis van concrete klantvragen nieuwe functionaliteiten te ontwikkelen. Bij voorkeur worden deze functionaliteiten op een bepaalde manier geprogrammeerd, zodat ze door meerdere klanten te gebruiken zijn. Je hebt dus vaak te maken met abstracte vraagstukken. Om dit te kunnen realiseren sta je nauw in contact met de product owner en/of klant. Je bent niet alleen onderdeel van het development team, maar hebt ook vaak contact met de product-owner en/of klanten om daardoor inzichten te verzamelen die leiden tot productverbeteringen. • Inzichten verzamelen bij de klant en/of product owner •

Bekijk vacature »

C# .NET Developer

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Bennekom gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Bedrijfsprofiel De organisatie waar je voor gaat werken heeft een onafhankelijk dataplatform ontwikkelt voor de agrarische sector.

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 »

Senior PHP developer

Functie Jouw werkzaamheden zullen grotendeels bestaan uit het in teamverband ontwerpen, vernieuwen en door ontwikkelen van het systeem. Het is echt back-end werk (bijvoorbeeld het doorontwikkelen van een API) en dit moet je dan ook liggen. Ze zijn niet persee gebonden aan talen of tools maar gebruiken graag de technieken die het beste aansluiten op de gegeven oplossing. Voor nieuwe (versies van) componenten maken ze veelal gebruik van Go(lang). Bij aanpassingen aan bestaande onderdelen gebeurt dit in PHP en C++. Het team is heel divers, er hangt een relaxte sfeer en ze organiseren regelmatig leuke music nights, game nights e.d.

Bekijk vacature »

Scrum Master

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 Scrum master op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je begeleidt twee teams binnen de afdeling Platform Services (PLS). Je helpt mee de devops manier van werken van de teams verder door te ontwikkelen. Je helpt de PO bij het managen van de product backlog; het voorbereiden van

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

27/07/2024 03:14:57
 
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.