MySQL Query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ervaren PHP Developer

Functieomschrijving PHP Developer met brede ervaring gezocht! Ben jij een Full Stack PHP Developer met brede ervaring die toe is aan een volgende stap? Lees dan snel verder! Voor onze eindklant in de regio Nunspeet zijn wij op zoek naar een ervaren PHP Developer die het IT Team van deze organisatie gaat versterken. Wij zoeken een enthousiaste en breed georiënteerde IT-er die er voor gaat zorgen dat deze innovatieve organisatie de volgende stap gaat maken. Om deze functie goed uit te kunnen voeren moet je communicatief goed zijn en in staat zijn om zelfstandig problemen op te lossen. Daarnaast bestaat

Bekijk vacature »

Software Ontwikkelaar .NET te Zaandam

Bedrijfsomschrijving Je komt hier terecht bij een door-en-door softwarebedrijf, waarbinnen meerdere SaaS pakketten worden ontwikkelt voor diverse sectoren. Hierbij kun je denken aan bijvoorbeeld de logistieke en medische branche. Deze organisatie kenmerkt zich door de hoge mate van complexiteit in de applicaties, wat betekent dat jij je hier niet zal gaan vervelen. Integendeel: Jij gaat hier elke dag ontzettend veel leren en je in razend tempo ontwikkelen als C# .Net Developer met focus op back-end. Het team bestaat uit ongeveer 20 personen personen, waarvan het grootste deel zich richt op software development. De sfeer is informeel en professioneel. De producten

Bekijk vacature »

Java developer

Als Java Developer bij Sogeti ben je onderdeel van onze toonaangevende community die bestaat uit ruim 100 gepassioneerde professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze klanten. Geen werkdag is hetzelfde, je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfskritische systemen. Een voorbeeld hiervan is een cliënt-volgsysteem bij Reclassering Nederland. Andere klanten waar wij onder andere voor werken: KPN, Philips, Nationale-Nederlanden, Kamer van Koophandel, ABN AMRO, Bovemij, Arval en de Politie. Werken bij Sogeti Nieuwe ontwikkelingen volgen we op de voet en delen we binnen de

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 »

Senior Front-End Developer

Als Senior Front-End Developer bij Coolblue verbeter je de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Wat doe je als Senior Front-End Developer bij Coolblue? Als Senior Front-end Developer werk je aan de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Je vindt het leuk om samen te werken met de UX designer om stories op te pakken. Daarnaast ben je trots op je werk en verwelkomt alle feedback. Ook Senior Front-end Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen Verbeteren van de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Nadenken

Bekijk vacature »

Low-code developer

Functie omschrijving Heb jij altijd al een training willen volgen in het buitenland? Voor een leuke opdrachtgever in omgeving Alphen ad Rijn zijn wij op zoek naar kandidaten die aan de slag willen als Low Code Developer! Beschik jij over HBO/WO nivo, bij voorkeur Informatica, maar een ander technische opleiding zoals bijv. wiskunde, natuurkunde is ook goed. Heb jij aantoonbare affiniteit met IT en ben jij gedreven, enthousiast, communicatief vaardig en klantgericht? Lees dan snel verder! Je wordt getraind tot een volwaardig Low Code Developer, het traject ziet er als volgt uit: Start 1e week januari, opleiding van 3 weken

Bekijk vacature »

Randstad - Freelance Backend Developer/ Data Engin

Starting date: 10.05.2023 Salary range: €67,00 - €77,00 Duration: 6 months Hours: 40 Working model: Hybrid* MUST be NL based Job description: Our vision is to have a consistent and data driven experience for all sales across all our operating companies. Our mission is to enable our salespeople to be able to reach out to the right company at the right time. We do this by creating data driven micro services and solutions. We mainly focus on implementation in the Google Cloud but also integrate with local systems and other cloud solutions. A typical day: As a back-end developer you

Bekijk vacature »

Software Developer .NET

Functie omschrijving .NET developer gezocht! Wij zoek op zoek naar een .NET Developer die zich niet uit het veld laat slaan voor een software bedrijf in de regio Veenendaal. Je gaat in deze functie aan de slag met het door ontwikkelen van bestaande producten en het ontwikkelen van nieuwe producten. Dit bedrijf ontwikkeld SaaS applicaties die zowel intern als extern gebruikt worden. Verder bestaat je functie uit: Het ontwikkelen en bouwen van webapplicatie, mobiele applicaties en websites vallen onder jouw verantwoordelijkheden; Werken met onder andere .NET, C#, HTML/CSS, Javascript en MSSQL/Oracle Databases; Hierin werk je samen met andere developers en

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 »

PHP Developer (junior functie)

Functie omschrijving Wij zijn op zoek naar een PHP Developer! Ben jij een starter en wil je werken bij een jong en leuk bedrijf? Lees dan verder! Wij zijn op zoek naar een PHP Developer binnen een junior functie. Binnen dit bedrijf gaat het om persoonlijke aandacht en ontwikkeling! Je komt te werken voor een leuk communicatiebureau die alles op het gebied van online en offline communicatie doet. Dit doen zij voor verschillende branches, waardoor je aan diverse soorten projecten mag werken, dit maakt deze baan erg leuk! Daarbij werk je aan een door hun zelf ontwikkeld framework welke goed

Bekijk vacature »

Junior Software developer

Functie Als junior .NET ontwikkelaar start jij in een compact team met drie ervaren .NET ontwikkelaars. Wij werken op projectbasis en begeleiden zelf het hele traject van A tot Z. Wij bieden jou dan ook een brede functie aan met veel technische uitdaging! Ons traject ziet er als volgt uit: 1) Wij analyseren de behoefte van onze klant 2) Wij werken de behoefte uit en vertalen dit naar technische werkzaamheden en maken een uren/kosten schatting; 3) Wij gaan aan de slag met het ontwikkelen van het product met directe feedback van de klant, zodat datgene gerealiseerd wordt, wat gewenst is;

Bekijk vacature »

Medior front-end developer gezocht (€3.300 -

Functie Wat ga je doen? Jij als front-end developer gaat werken binnen de teams van/voor onze klant. Je werkt in een team met starters en ervaren ontwikkelaars met allemaal 1 overeenkomst; passie voor het vak. Maak je een fout? Geen probleem, leer ervan en ga dan weer door. Door de variëteit aan werk kun je in verschillende omgevingen een kijkje nemen en jezelf dus snel ontwikkelen. Wat hebben we jou te bieden? • Uitdagende projecten bij mooie klanten (bij jou in de buurt, of binnenkort intern vanuit ons kantoor!) • Een jonge organisatie met talentvolle collega’s • Veel ruimte voor

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 »

Software Developer

Dit ga je doen Je bent verantwoordelijk voor de warehouse applicatie die een integratie heeft met de PLC laag; Je ontwikkelt in C#/.Net; Je bent verantwoordelijk voor het ontwikkelen van interfaces en het visualiseren van componenten; Je denkt mee over het design voor business oplossingen; Je bent verantwoordelijk voor het testen van de gebouwde oplossing. Hier ga je werken Voor een internationale organisatie in de transport zijn wij momenteel op zoek naar een Software Developer. Ze zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van de warehouses. Op dit moment wordt er nog gebruik

Bekijk vacature »

SAP ABAP Developer

Dit ga je doen Software ontwikkeling met behulp van o.a. ABAP, Sapscript en Smartforms Maatwerk development op SAP ECC 6.0, in de toekomst S/4 HANA Samenwerken met Business Analisten die functioneel en technisch ontwerpen aanleveren Testen van opgeleverde software Bugfixing Ondersteuning van eindgebruikers Hier ga je werken Onze klant, een internationaal gevestigd productiebedrijf dat mensen blij maakt, is ter versterking op zoek naar een ABAP Developer voor hun SAP team. Het team van 4 mensen verzorgt de ontwikkeling van maatwerk voor de SAP omgeving waar wordt gewerkt met modules SD, FI/CO, PM en MM. Momenteel draait het bedrijf op SAP

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

17/05/2024 18:54: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.