Lastige query?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Back-end programmeur

Functieomschrijving Heb jij kort geleden je MBO of HBO ICT in ontvangst mogen nemen? Of ben je klaar voor een nieuw hoofdstuk in jouw carrière? Voor een uitdagende werkgever in de regio van Tilburg zijn wij op zoek naar een ambitieuze back-end programmeur met affiniteit met MS Acess. Samen met een enthousiast team ben je verantwoordelijk voor het bouwen van maatwerk software voor hun klanten. Je hebt kennis of ervaring van SQL, Maar affiniteit met MS Acess is nog belangrijker. Je bent sociaal naar klanten en flexibel ingesteld. Je denkt altijd in kansen en gaat graag de uitdaging aan. Verder

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 »

C# Developer

Dit ga je doen De requirements in kaart brengen van de klant; Implementeren van functionele en technische specificaties bij opdrachtgevers; Oplossen van bugs; Meewerken aan maatwerksoftware voor nieuwe opdrachtgevers; Het testen en uitleveren van nieuwe functionaliteiten naar de acceptatie en productieomgeving De database ontwikkelen en onderhouden; Hier ga je werken Onze klant is gevestigd in het westen van Nederland en is gespecialiseerd in het ontwikkelen van software voor de levensmiddelen industrie. De software die het team maakt optimaliseert voornamelijk de administratieve processen, maakt deze meetbaar en zorgt ervoor dat de data zo goed mogelijk gebruikt kan worden. Binnen een van

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 »

C++ Ontwikkelaar

Functieomschrijving Ben jij toe aan een nieuwe uitdaging en werk je graag en goed in C++ en C#? Dan zijn we op zoek naar jou! Dit bedrijf is dé specialist op het gebied van automatiseringssoftware voor een specifieke branche en ze zijn per direct op zoek naar versterking in hun development team. Wat jij gaat doen binnen jouw rol als C++ ontwikkelaar; Je vertaalt de wensen van gebruikers naar een functioneel ontwerp. Je houdt je bezig met het ontwerpen, programmeren en testen van product aanpassingen. Je gaat nieuwe product releases implementeren in de projectteams. Je gaat de effecten van nieuwe

Bekijk vacature »

Medior/senior Front-end developer (Vue.js)

Functie Als Front-end developer ben je uiteindelijk overkoepelend aan de slag voor de 3 ontwikkelteams die ieder aan een specifiek product werken. In samenwerking met de UX-designer en de huidige Front-end developer zorg je voor gebruiksvriendelijke software. Lijkt het jou interessant om complexe problemen op te lossen en feautures naar een hoger niveau te tillen? En vind je het niet erg om oudere delen van de applicaties te refactoren i.c.m. het toevoegen van nieuwe functionaliteiten? Dan komen wij graag met je in contact. Eisen • HBO werk- en denkniveau (ze kijken niet naar papieren, maar naar denkniveau, motivatie en zelfredzaamheid)

Bekijk vacature »

Ervaren PHP Software Developer

Functieomschrijving Voor een toffe opdrachtgever in regio Breda zijn wij op zoek naar een medior PHP Developer met affiniteit met Laravel. Je komt te werken bij een uitdagende opdrachtgever met supergave klanten in een specifieke branche. Als PHP ontwikkelaar ben je samen met een vooruitstrevende team van 6 collega’s verantwoordelijk voor de ontwikkeling, beheer en het vernieuwen van informatiesystemen voor een specifieke branche. Je ondersteunt complexe uitdagingen van klanten. Vervolgens breng je hun wensen in kaart en vertaalt deze door naar maatwerk software. Affiniteit met Laravel is een pré. Om de klanten zo goed mogelijk te ondersteunen en snel in

Bekijk vacature »

Medior/Senior Software Developers gezocht in de Ra

Functie Op dit moment staan er posities open voor de volgende functies: Front-end, Back-End & Fullstack software developer. Als Front-End software developer werk je met JavaScript en de bijbehorende technologieën zoals TypeScript, Angular, React, Vue en Svelte. Als Back-End software developer ben je bezig in NodeJS en doe je dit met behulp van AWS, NoSQL, REST en GraphQL. Je krijgt leuke en uitdagende opdrachten met een gemiddelde duur van anderhalf jaar. Hier werk je in een team met andere IT’ers aan het ontwikkelen en verbeteren van software. Je wordt begeleid door een accountmanager die fungeert als jouw aanspreekpunt. Het team

Bekijk vacature »

.NET Developer gezocht!

Functie omschrijving Wij zijn op zoek naar een .NET Developer! Wil jij werken voor een internationaal bedrijf waar je legio mogelijkheden krijgt als Software Ontwikkelaar? Grijp nu je kans en kijk snel of jouw vaardigheden aansluiten bij onderstaand profiel! Je kunt een uitdagende rol gaan vervullen als .NET Developer binnen een internationaal bedrijf dat gevestigd is in omgeving Bergen. Dit bedrijf is zeer vooruitstrevend en verricht betekenisvol werk. Binnen dit bedrijf wordt gewerkt aan de productie en ontwikkeling van medische middelen. Als .NET Developer ga jij je bezig houden met het volgende: Je wordt betrokken bij alle fasen van software

Bekijk vacature »

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Software Developer C# .NET

Functie omschrijving Software Developer C# .NET gezocht voor een dynamische organisatie! Ben jij net afgestudeerd of toe aan een volgende stap in je maatschappelijke carrière? Lees dan snel verder! Wij zijn op zoek naar een Software Developer die klaar is voor een nieuwe uitdaging en die een organisatie in de regio Houten wil versterken. Je werkt in deze functie aan verschillende projecten en gaat vaak op bezoek bij klanten. In deze functie kun je een grote mate van uitdaging, diversiteit en verantwoordelijkheid verwachten. Bedrijfsprofiel Waar kom je te werken? Je komt te werken bij een organisatie dat gespecialiseerd is in

Bekijk vacature »

Software Ontwikkelaar

Functieomschrijving In deze uitdagende functie als Software Developer ga je de volgende taken uitvoeren: Maatwerk back-end software programmeren; API koppelingen bouwen; Software optimaliseren voor klanten; Bouwen maatwerk applicaties; Werken met Microsoft stack zoals C#, .NET (Core) en Entity framework; Bedrijfsprofiel Je gaat werken bij een klein softwareontwikkelingsbureau, die maatwerk software bouwt voor klanten door heel Nederland. Dit doen zij al meer dan 20 jaar. Het is van oorsprong een familiebedrijf, opgezet door de eigenaar, die er nog steeds werkt. Het team bestaat vooral uit back-end developers en één systeembeheerder. Je krijgt veel kans om jezelf te ontwikkelen en krijgt tevens

Bekijk vacature »

Low Code Ontwikkelaar

In het kort Als Low Code Developer werk je aan projecten bij en voor onze klanten, waarbij je voor het ontwikkelen van de oplossingen een technisch low-code platform gebruikt. Samen met het team streef je naar de beste oplossing en bepalen jullie de juiste aanpak. Je rol is divers en je bent van begin tot eind betrokken bij de ontwikkeling zowel de back-end en de front-end van de applicatie. Naast de ontwikkeling en oplevering, breng je ook advies uit aan de klant waarom bepaalde keuzes worden gemaakt. Je bent dan ook communicatief sterk en kunt je keuzes goed (inhoudelijk) onderbouwen.

Bekijk vacature »

Junior Front end developer Onderwijssoftware

Functie Als Junior front end developer kom jij terecht in een klein, maar hecht team bestaande uit 5 andere developers (waarvan 2 senioren, 2 medior en 1 junior). Met de gezamenlijke missie om “ieder kind te helpen met onze software” wordt er dagelijks gepassioneerd en hard gewerkt aan ons in-house ontwikkeld platform. Deze software is gebaseerd is op AI, machine Learning en wetenschappelijke inzichten. Dagelijks zul jij werken met onze high traffic webapplicatie. We hebben ruim 300.00 gebruikers en meer dan 2 miljard records waar je te maken mee krijgt! Verder zul jij je bezighouden met: – Het ontwikkelen van

Bekijk vacature »

PHP Developer

Dit ga je doen Ontwikkelen, implementeren en testen van PHP-oplossingen en Apps voor klanten en bedrijfsprocessen; Opstellen van requirements en uitwerken van de oplossingen; Testen van software en borgen van een soepele overdracht, inclusief documentatie; Proactief adviseren vanuit eigen expertisegebied over ontwikkelingen en verbeterpunten in technische toepassingen en processen binnen de organisatie. Hier ga je werken De organisatie is een ambitieuze en vooruitstrevende speler in de markt in de regio Rotterdam. Ze zijn de snelst groeiende in hun branche. Met een excellent aanbod en service willen zij de beste keuze zijn voor hun bestaande en nieuwe klanten. Dit alles doen

Bekijk vacature »

Pagina: 1 2 volgende »

Pelckie

Pelckie

18/12/2007 10:06:00
Quote Anchor link
Hallo allemaal,

Ik heb een table page_id ,position en session_id
Nu wil ik filteren op page_id, maar ook op aantal posities(rijen) per sessie.
Nu lijkt dit eenvoudig, maar voor elke positie wordt een nieuwe regel gemaakt.

page_id position session_id
3 1 1
4 2 1
5 3 1
5 1 2
6 1 3

In dit voorbeeld bestaat sessie 1 uit drie posities (rie rijen lang) page_id 3 komt voor in 1 van deze rijen.

Nu wil ik filteren op page_id=3, want deze komt in sessie 1 voor en aantal posities = 3 met uitkomst sessie 1.

ik wil dit liefst in 1 qeury oplossen, wanneer mogelijk.

Ik hoop dat ik mijn vraagstuk duidelijk verwoord heb.
 
PHP hulp

PHP hulp

09/01/2025 17:03:44
 
Jacco Engel

Jacco Engel

18/12/2007 10:09:00
Quote Anchor link
SELECT * FROM table WHERE kolom1=3 OR kolom2=3 OR kolom3=3

Zoiets?
 
Pelckie

Pelckie

18/12/2007 10:13:00
Quote Anchor link
Nee eigenlijk niet, het moet een combinatie zijn van deze twee query's:

SELECT session_id,count(session_id) AS count FROM vb_table GROUP BY session_id HAVING count = 3

SELECT session_id FROM vb_table WHERE page_id = 3


Misschien is het dan duidelijker ;)
 
Hipska BE

Hipska BE

18/12/2007 10:16:00
Quote Anchor link
Quote:
Nu wil ik filteren op page_id=3 ...

hieruit denk ik dat je deze query bedoelt:
SELECT * FROM table WHERE session_id = 1 AND page_id = 3

Maar, wat zeg jij daar nog allemaal?!?
Quote:
... , want deze komt in sessie 1 voor en aantal posities = 3 met uitkomst sessie 1.

Verklaar dat nog eens duidelijker aub..
Ik zie maar 1 positie voor pagina 3 in sessie 1 en niet 3 posities :-S
Gewijzigd op 01/01/1970 01:00:00 door Hipska BE
 
Pelckie

Pelckie

18/12/2007 10:25:00
Quote Anchor link
Bedankt voor de snelle reacties,

session_id 1 bestaat uit drie posities, want session_id 1 komt 3x voor, dat wil zeggen drie rijen, met session_id 1, dus drie posities.

In 1 van die rijen komt page_id 3 voor, dus page_id 3 komt in de session_id 1 voor.

Ik wil dus eigenlijk een query die naar een getal zoekt in de kolom page_id en het totaal aantal rijen telt met het bijbehorende session_id.
 
Jacco Engel

Jacco Engel

18/12/2007 10:28:00
Quote Anchor link
SELECT session_id,count(session_id) AS count FROM vb_table GROUP BY session_id HAVING count = 3

Dit is niet slim :) Je moet nooit de naam count gaan gebruiken omdat het ook een (my)SQL functie is :)
Gewijzigd op 01/01/1970 01:00:00 door Jacco Engel
 
Pelckie

Pelckie

18/12/2007 10:34:00
Quote Anchor link
Ja is idd een reserved word, maar met is geen veld. Het is een count.

"count(session_id) AS count"
 
Jacco Engel

Jacco Engel

18/12/2007 10:37:00
Quote Anchor link
Dan nog is "AS count" geen goed plan :)
 
Joren de Wit

Joren de Wit

18/12/2007 10:37:00
Quote Anchor link
De alias 'count' is ten eerste niet slim gekozen omdat dat een gereserveerd woord is. Dat zal zeker problemen gaan opleveren. Gebruik dan liever gewoon 'aantal' oid.

Quote:
Ik wil dus eigenlijk een query die naar een getal zoekt in de kolom page_id en het totaal aantal rijen telt met het bijbehorende session_id.
Ik denk dat je query dan zoiets zal worden?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
SELECT
    page_id,
    session_id,
    COUNT(session_id) AS aantal
FROM
    tabel
GROUP BY
    page_id,
    session_id
 
Pelckie

Pelckie

18/12/2007 11:12:00
Quote Anchor link
Zo simpel is het helaas niet.
Dan komt er overal bij aantal als resultaat 1 uit...
 
Joren de Wit

Joren de Wit

18/12/2007 11:35:00
Quote Anchor link
En zo?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
SELECT
    session_id,
    COUNT(session_id) AS aantal
FROM
    test
WHERE
    session_id = (
        SELECT session_id
        FROM test
        WHERE page_id = 3)
GROUP BY
    session_id;
 
Frank -

Frank -

18/12/2007 11:36:00
Quote Anchor link
Coen schreef op 18.12.2007 11:12:
Zo simpel is het helaas niet.
Dan komt er overal bij aantal als resultaat 1 uit...
Dat is logisch, dat had ik je van te voren al wel kunnen zeggen. Je kunt geen groepen aanmaken, per groep het aantal records tellen, en dan een detail van 1 enkel record opvragen. Er is geen andere oplossing dan voor de details een andere query op te stellen.

Ook niet als MySQL wel lukraak resultaten gaat verzinnen met onmogelijke GROUP BY-stellingen...
 
Pelckie

Pelckie

18/12/2007 11:38:00
Quote Anchor link
Ik wil paden tracen van bezoekers op een website,

In een tabel sla ik elke keer een page_id en een position op en een session_id, elke sessie heeft een session_id.

De position geeft aan waar in het path de pagina zich bevindt.

page_id position session_id
1 1 1
2 2 1
3 3 1
1 1 2
2 2 2
3 3 2

In dit voorbeeld zijn er twee bezoeken(sessies) geweest, allebei de gebruikers hebben het zelfde pad afgelegd. namelijk pagina 1-> pagina 2 -> pagina 3.
De positie begint bij elke nieuwe sessie opnieuw bij 1.

Nu wil ik filteren elk pad waar pagina 3 voor komt, maar ik wil alleen de paden die langer zijn dan bijvoobeeld 2 pagina's.

In dit voorbeeld zijn dit allebei de sessies 1 en 2, want deze zijn beide langer dan 2(count(session_id)) en bevatten beide pagina 3, in één van de rijen.

Dit wil ik in 1 qeury....
 
Pelckie

Pelckie

18/12/2007 11:39:00
Quote Anchor link
<qoute>Dat is logisch, dat had ik je van te voren al wel kunnen zeggen. Je kunt geen groepen aanmaken, per groep het aantal records tellen, en dan een detail van 1 enkel record opvragen. Er is geen andere oplossing dan voor de details een andere query op te stellen.

Ook niet als MySQL wel lukraak resultaten gaat verzinnen met onmogelijke GROUP BY-stellingen...
</quote>

Ok, bedankt,

Hoe stel ik het dan op in twee losse qeury's?
Gewijzigd op 01/01/1970 01:00:00 door Pelckie
 
Joren de Wit

Joren de Wit

18/12/2007 12:50:00
Quote Anchor link
Wat je dus wilt is alle rijen selecteren met het session_id waarvan er minimaal 3 voorkomen en waarvan er minimaal 1 gekoppeld is aan page_id 3. Oftewel, ik voel 2 subqueries:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
SELECT *
FROM tabel
WHERE session_id IN (
    SELECT session_id
    FROM tabel
    WHERE page_id = 3
    AND session_id IN (
        SELECT session_id
        FROM tabel
        GROUP BY session_id
        HAVING COUNT(session_id) > 2
    )
)
ORDER BY session_id;
 
Pelckie

Pelckie

18/12/2007 13:27:00
Quote Anchor link
Blanche schreef op 18.12.2007 12:50:
Wat je dus wilt is alle rijen selecteren met het session_id waarvan er minimaal 3 voorkomen en waarvan er minimaal 1 gekoppeld is aan page_id 3. Oftewel, ik voel 2 subqueries:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
SELECT *
FROM tabel
WHERE session_id IN (
    SELECT session_id
    FROM tabel
    WHERE page_id = 3
    AND session_id IN (
        SELECT session_id
        FROM tabel
        GROUP BY session_id
        HAVING COUNT(session_id) > 2
    )
)
ORDER BY session_id;


Perfect, Dat is precies wat ik bedoelde. Alleen al knap dat je snapte wat ik wilde en dan ook nog de goede oplossing, geniaal man!

Ik heb alleen even van ORDER BY -> GROUP BY gemaakt, omdat ik als resultaat alleen het betreffende session_id nodig heb.

Heel erg bedankt!
 
Joren de Wit

Joren de Wit

18/12/2007 13:34:00
Quote Anchor link
Coen schreef op 18.12.2007 13:27:
Ik heb alleen even van ORDER BY -> GROUP BY gemaakt, omdat ik als resultaat alleen het betreffende session_id nodig heb.
Ho! Stop!

Dat kan dus niet. Daar een een GROUP BY helemaal niet voor bedoeld! Als je enkel het betreffende session_id nodig hebt, heb je aan deze query voldoende:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
SELECT session_id
FROM tabel
WHERE page_id = 3
AND session_id IN (
    SELECT session_id
    FROM tabel
    GROUP BY session_id
    HAVING COUNT(session_id) > 2
)

ps. Lees ook eens deze tutorial:

GROUP BY: Het juiste gebruik ervan
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Pelckie

Pelckie

18/12/2007 13:41:00
Quote Anchor link
Zo is ie precies goed en bedankt voor de link, ik vat hem haha... me nub
 
Frank -

Frank -

18/12/2007 13:44:00
Quote Anchor link
Coen schreef op 18.12.2007 13:27:
Ik heb alleen even van ORDER BY -> GROUP BY gemaakt, omdat ik als resultaat alleen het betreffende session_id nodig heb.
Dit mag je lezen als:
Quote:
Ik heb van een koe een varken gemaakt.

Heel knap, maar dat gaat dus niet.

Zie verder de tutorial die Blanche je reeds heeft gegeven en onthoudt dat MySQL standaard fout, heel erg fout, omgaat met GROUP BY en vele andere database-toepassingen. Zie deze tutorial hoe je MySQL zo kunt instellen dat MySQL ietsjes veiliger wordt, zich ietsjes beter gaat gedragen. Desondanks blijft MySQL onbetrouwbaar, controleer jouw queries dus dubbel en dwars!
 
Pelckie

Pelckie

18/12/2007 13:49:00
Quote Anchor link
Oke, bedankt voor de tip. Ik ging er blind vanuit dat wanneer die het slikt het goed is, haha niet dus.
Gewijzigd op 01/01/1970 01:00:00 door Pelckie
 
Joren de Wit

Joren de Wit

18/12/2007 13:57:00
Quote Anchor link
Coen schreef op 18.12.2007 13:49:
Oke, bedankt voor de tip. Ik ging er blind vanuit dat wanneer die het slikt dat het goed is, haha niet dus.
Nope, dat is het hele grote probleem van MySQL. Als je queries laat uitvoeren die eigenlijk helemaal niet kunnen, gaat MySQL willekeurige resultaten teruggeven in plaats van een nette foutmelding.

In STRICT mode heeft MySQL daar gelukkig al minder last van, maar beter is het nog om MySQL helemaal te vergeten en met een andere database (zoals bijvoorbeeld postgreSQL) te gaan werken.
 

Pagina: 1 2 volgende »



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.