Klassement 'beste twintig' veranderen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Lasrobotprogrammeur/operator

Heb je interesse in trekkers en beschik je overvlijmscherpse precisie? Solliciteer dan op deze vacature! Als Lasoperator ben je vooral bezig met het maken van nieuwe lasrobotprogramma’s en het optimaliseren van bestaande programma’s, zowel online als offline (incl. het bedienen van de Lasrobots). Daarnaast draag je bij aan een optimaal rendement van de las robots. Verder heb je de volgende werkzaamheden: Het meewerken als operator c.q. Robotlassen niveau 2 (van complexe samenstellingen/halffabricaten), het om- en instellen van de diverse stations van lasmallen (productdragers), het afwerken van laswerk (verwijderen lasspetters en oxiden), het bewaken van de machineplanning (op bewerkingen) incl. de

Bekijk vacature »

Front end developer binnen het onderwijs

Functie Het doel van dit team is om te zorgen dat de studenten altijd op de hoogte zijn van relevante informatie en de mogelijkheid hebben om online vragen te stellen. Hiervoor hebben ze een portal ontwikkeld. De app is echt een greenfield project met een eigen inrichting middels cloud. De ontwikkeling wordt gedaan door gebruik te maken van oa. Javascript, React, CSS, Next.js, GraphQL in een Azure Cloud omgeving. Daarnaast gebruiken ze tooling als Figma, storybook, Jest en Github. De complexiteit in deze rol zit hem in het feit dat data uit verschillende bronsystemen komt waarbij er zowel gekoppeld wordt

Bekijk vacature »

(Junior) PHP Ontwikkelaar bij een retail bedrijf i

Bedrijfsomschrijving Ben jij een ervaren PHP ontwikkelaar met een passie voor retail en ICT? Wil jij werken in een team dat zich bezighoudt met het ontwikkelen van uitdagende applicaties voor een groot retailbedrijf in Delft? Dan zijn zij op zoek naar jou! Functieomschrijving Als PHP Ontwikkelaar werk je in een team aan de ontwikkeling van applicaties die door de gehele organisatie worden gebruikt. Je bent verantwoordelijk voor het ontwikkelen, testen en implementeren van deze applicaties. Je werkt hierbij nauw samen met andere ontwikkelaars, projectmanagers en stakeholders binnen de organisatie. Je taken bestaan onder andere uit: Ontwikkelen van nieuwe functionaliteiten en

Bekijk vacature »

SQL database developer

Functie omschrijving Voor een softwarebedrijf gespecialiseerd in het ontwikkelen van logistieke software in omgeving Tilburg zijn wij op zoek naar een ervaren SQL database developer. Je gaat werken aan uitdagende, complexe projecten. Iedere klant/project betekent maatwerk in de database. Jouw werkzaamheden zullen er als volgt uit zien: Je bent verantwoordelijk voor de gehele ontwikkelstraat. Van architectuur tot ontwikkeling Je gaat je bezig houden met het ontwerpen en ontwikkelen van MS SQL server databases. Je gebruikt hiervoor T-SQL als programmeer laag. Je begeleidt als lead developer de projecten bij klanten van A – Z. Je sluit aan bij meetings met klanten,

Bekijk vacature »

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 »

Front-end developer (medior/senior)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

Senior .Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij dit jaar Microsoft Partner of the year geworden. Sogetisten staan klaar voor elkaar, hebben lol met elkaar en daarmee behalen we de mooiste resultaten! Werken bij Sogeti

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 »

Als Front-end developer werken aan apps voor het o

Functie Als Front-end developer werk je intensief samen met 1 van de UX-designers en denk je mee over de gebruiksvriendelijkheid en design van onze web- en mobile apps. Je bent betrokken bij sessies met gebruikers om designs te valideren en usability van de app-in-wording te testen. Vervolgens gebruik je dit om samen met je team waarin ook back-end (.NET) developers zitten, te zorgen voor de realisatie van de best mogelijke apps voor studenten en docenten. Eisen • Je hebt een hands-on development en coding mind-set en werkt graag aan een high quality code base welke je consequent onderhouden kan worden

Bekijk vacature »

.Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij dit jaar Microsoft Partner of the year geworden. Sogetisten staan klaar voor elkaar, hebben lol met elkaar en daarmee behalen we de mooiste resultaten! Werken bij Sogeti

Bekijk vacature »

PHP/Symfony developer

Functieomschrijving Vanuit het hoofdkantoor in omgeving Bergen op Zoom ben je als PHP/Symfony Developer niet alleen bezig met software ontwikkeling. Je bent buiten ontwikkeling ook continu bezig met het zoeken naar nieuwe trends en ontwikkelingen die van waarde kunnen zijn voor de efficiëntie van software ontwikkeling. Techstack: PHP, Symfony & mySQL. Jouw takenpakket ziet er als volgt uit: Het ontwerpen en implementeren van webapplicaties met het Symfony-framework; Het testen van ontwikkelde applicaties om te zorgen dat ze goed functioneren en voldoen aan de eisen van de klanten; Het schrijven van een schone en efficiënte code volgens het Symfony framework; Onderhouden

Bekijk vacature »

Airport Developer / System engineer

De functie Als onze nieuwe Airport Developer / System Engineer is je doel om uit nieuwbouw- en onderhoudsprojecten maximale waarde te creëren voor Schiphol Group en haar stakeholders. Vanuit je visie en expertise, maar ook (technologische) ontwikkelingen, wetgeving en beleid vertaal je klantwensen naar een gedegen programma van eisen. In de planontwikkelingsfase werk je nauw samen met Plan Ontwikkelaars om je kennis in te brengen ten behoeve van de kwaliteit van het investeringsvoorstel. Je overlegt met diverse partijen, stelt de vraag achter de vraag en verbindt zo de belangen van de luchthaven, proceseigenaar en asseteigenaar om tot een gedragen ontwikkelopgave

Bekijk vacature »

Klein team zoekt grote fullstack .NET developer to

Bedrijfsomschrijving Deze werkgever is marktleider in de Benelux en is Europees ook al aardig aan de weg aan het timmeren. Ze voorzien technische winkels van apparatuur om producten een langer leven te geven. Hiermee reduceren ze flink wat CO2 uitstoot en dat is natuurlijk goed voor iedereen! IT speelt een belangrijke rol in de bedrijfsvoering en de applicaties zijn van goed niveau. Als fullstack .NET developer ga jij je bijdrage leveren aan het verder verbeteren van de applicaties en de interne processen. Ze zijn nu met ruim 50 medewerkers in totaal en de afdeling development bestaat uit een 5tal developers.

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar versterking voor op de afdeling Software Development! Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met

Bekijk vacature »

Software programmeur

Functieomschrijving Voor een uitdagende werkgever in regio Breda zijn wij op zoek naar een Full Stack C#.NET programmeur. Je bent verantwoordelijk voor het ontwikkelen van apps, webapplicaties en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere developers en engineers om de sensoren in machines te scannen en vervolgens de data om te zetten in management informatie voor de klanten. Taken en verantwoordelijkheden: Je gaat aan de slag met de volgende technologieën en frameworks: C#, JS frameworks, HTML, TypeScript, SQL & C++, CSS. Geen ervaring met één van deze technologieën is dan ook geen enkel probleem! Deze werkgever biedt

Bekijk vacature »
Martin Rep

Martin Rep

16/08/2015 08:31:45
Quote Anchor link
Hai!

Voor het klassement van mijn mahjongclubje heb ik een algemeen klassement bedacht waarbij de beste 20 resultaten van iedere speler tellen.
In het bestand functions.php is dat als volgt gedefinieerd:

function standmetscoresmetid($id) {
// Get database connection
$db = JFactory::getDbo();

$qry = "SELECT SpelerID, SpelerNaam, Average, Aantal, Hoogste, Laagste "
. "FROM vwStand "
. "WHERE SeizoenID = " . $db->quote($id). " AND AANTAL<>0 ORDER BY Average DESC;";

$db->setQuery($qry);
$db->query();
$result=$db->loadRowList();

$tbl = new HTML_Table(null, 'display', 1, 0, 4, array('width'=>'100%'));

}

Maar deze methode bevalt me niet meer zo goed. Ik zou ook de "slechtste" resultaten willen laten
meetellen. Bijvoorbeeld de beste 10 en de slechtste 10, en daar dan het gemiddelde van.
Maar ik heb geen idee hoe ik de 'slechtste 10' moet definiëren.
Iemand een hint?? Alvast bedankt!
 
PHP hulp

PHP hulp

25/04/2024 18:00:52
 
Eddy E

Eddy E

16/08/2015 17:18:48
Quote Anchor link
Haal het stukje AND AANTAL <>0 eens weg...
Maar ik neem aan dat je de resultaten (of zelfs het aantal resultaten) niet bijhoudt in de rij bij de gebruiker... maar die gewoon elke keer opnieuw berekent/bekijkt in de tabel met resultaten...
 
Martin Rep

Martin Rep

16/08/2015 18:41:39
Quote Anchor link
Eddy E op 16/08/2015 17:18:48:
Maar ik neem aan dat je de resultaten (of zelfs het aantal resultaten) niet bijhoudt in de rij bij de gebruiker... maar die gewoon elke keer opnieuw berekent/bekijkt in de tabel met resultaten...


Ja, dat klopt. (Het nadeel is ook dat het openen van de html-pagina waarop het klassement staat, langt duurt
omdat alle resultaten opnieuw geëvalueerd moeten worden.)
Gewijzigd op 16/08/2015 18:42:17 door Martin Rep
 
Frank Nietbelangrijk

Frank Nietbelangrijk

16/08/2015 19:01:09
Quote Anchor link
Uhm je database indeling aub? (dus welke tabellen heb je en welke kolommen zitten er in de tabellen)
 
Martin Rep

Martin Rep

16/08/2015 21:52:37
Quote Anchor link
Eh… hier val ik een beetje door de mand als php-nitwit.
Je kunt de html-tabel hier 'live' zien, help dat?

http://www.furiten.nl/klassement1516.html

(deze tabel heeft het bovengemelde probleem nog nauwelijks; op
dit moment is er slechts één speler die 20+ wedstrijden heeft
gespeeld)
Gewijzigd op 16/08/2015 21:59:12 door Martin Rep
 
Martin Rep

Martin Rep

17/08/2015 23:17:17
Quote Anchor link
…ik kom hier niet verder, zie ik. Ik zal het eens proberen op het Engelstalige PHP-forum. Toch
bedankt!
 
Marthijn Buijs

Marthijn Buijs

18/08/2015 07:34:42
Quote Anchor link
Hoezo? Op dit forum zijn er mensen genoeg die jouw kunnen helpen..
 
Martin Rep

Martin Rep

18/08/2015 07:38:42
Quote Anchor link
Daar had ik op gehoopt, Maarten, maar tot nu toe kom ik er niet uit. Maar de hint is duidelijk: ik geef het nog niet op! Misschien meer geduld nodig… ;-)
 
Frank Nietbelangrijk

Frank Nietbelangrijk

18/08/2015 08:06:14
Quote Anchor link
Het handigste lijkt mij als je een extra kolom 'average_score' toevoegt. En dan heb je enkel eenmalig een goede functie / formule nodig die de hoogte van de 'gemiddelde score' berekent. De uitkomst schrijf je weg in dit veld en vervolgens hoef je alleen maar

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
SELECT SpelerID, SpelerNaam, Average, Aantal, Hoogste, Laagste
FROM vwStand
WHERE SeizoenID = 5
ORDER BY average_score DESC
LIMIT 20


te doen.
 
Martin Rep

Martin Rep

18/08/2015 10:38:48
Quote Anchor link
Dit komt in de goede richting, Frank! Maar op deze manier krijg je toch niet het gemiddelde van de beste 20 en de slechtste 20 partijen (van een speler
die bijvoorbeeld al 100 partijen heeft gespeeld (van wie in het door mij bedoelde model dus 60 partijen niet worden meegenomen in het gemiddelde).

Dank!
 
Jacco Engel

Jacco Engel

18/08/2015 11:25:07
Quote Anchor link
Tijd om het over een andere boeg te gooien dan :P

Kun je iets met deze denkrichting mischien?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
SELECT ((high.hoogste + low.laagste) / 20) as average FROM
    (SELECT SUM(Average) as hoogste FROM vwStand order by Average DESC limit 10) as high,
    (SELECT SUM(Average) as laagste FROM vwStand order by Average ASC limit 10) as low
;

Dit zou volgens mij het gemiddelde van de hoogste en laagste 10 gemiddelden moeten geven, maar bind me er niet op vast.

Denk dat dit meer de richting is waar je in moet denken als je het allemaal in SQL wil doen.
 
Martin Rep

Martin Rep

18/08/2015 11:46:12
Quote Anchor link
Hier kan ik wel wat mee ;-)
Ik ga ermee aan de slag en meld me weer als ik meer weet.

Dank (^^)
 
Jan de Laet

Jan de Laet

18/08/2015 12:41:10
Quote Anchor link
Maar wat krijg je dan als resultaat als er minder dan 20 resultaten zijn?
De hoogste 10 en de laagste 10 overlappen dan.
Gewijzigd op 18/08/2015 12:42:16 door Jan de Laet
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

19/08/2015 11:45:00
Quote Anchor link
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
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
SELECT
    s.SpelerID,
    s.SpelerNaam,
    s.Aantal,
    AVG(CASE
            WHEN r.rijnummer <= 10 THEN r.score
            ELSE
                CASE
                    WHEN r.rijnummer > 10 AND r.rijnummer > s.Aantal - 10 THEN r.score
                    ELSE NULL END
        END) gemiddelde,
    MAX(CASE
            WHEN r.rijnummer <= 10 THEN r.score
            ELSE
                CASE
                    WHEN r.rijnummer > 10 AND r.rijnummer > s.Aantal - 10 THEN r.score
                    ELSE NULL END
        END) hoogste,
    MIN(CASE
            WHEN r.rijnummer <= 10 THEN r.score
            ELSE
                CASE
                    WHEN r.rijnummer > 10 AND r.rijnummer > s.Aantal - 10 THEN r.score
                    ELSE NULL END
        END) laagste
FROM
    (
    SELECT
        d.SpelerID,
        d.SpelerNaam,
        COUNT(*) Aantal
    FROM
        deelnemers d
    JOIN
        resultaten r1
        ON d.SpelerID = r1.SpelerID
    WHERE r1.SeizoenID = 5
    GROUP BY d.SpelerID
    ) s
JOIN
    (
    SELECT
        @rijnummer := CASE WHEN ro.SpelerID <> @id THEN 1 ELSE @rijnummer + 1 END rijnummer,
        @id := ro.SpelerID SpelerID,
        ro.score
    FROM
        (
        SELECT
            d1.SpelerID,
            r2.Score
        FROM
            deelnemers d1
        JOIN
            resultaten r2
            ON d1.SpelerID = r2.SpelerID
        WHERE r2.SeizoenID = 5
        ORDER BY d1.SpelerID, r2.score
        ) ro
    CROSS JOIN
        (
        SELECT
            @rijnummer := 1,
            @id := 0
        ) var
    ) r
    ON s.SpelerID = r.SpelerID
GROUP BY s.SpelerID, s.SpelerNaam, s.Aantal
ORDER BY gemiddelde DESC,s.Aantal

De eerste subquery haalt de spelers en het totaal aantal gespeelde partijen op.
De tweede haalt alle resultaten op en nummert deze per speler (in PostGres/Oracle/SQLserver etc gaat dit veel eenvoudiger).

Dit wordt dan gebruikt om te bepalen welke resultaten mee moeten worden genomen in de aggegrate functies (NULL wordt genegeerd)

Edit:
JOIN Conditions toegevoegd
Gewijzigd op 19/08/2015 13:14:11 door Ger van Steenderen
 
Martin Rep

Martin Rep

29/08/2015 20:54:27
Quote Anchor link
Ger van Steenderen op 19/08/2015 11:45:00:

De eerste subquery haalt de spelers en het totaal aantal gespeelde partijen op.
De tweede haalt alle resultaten op en nummert deze per speler (in PostGres/Oracle/SQLserver etc gaat dit veel eenvoudiger).

Dit wordt dan gebruikt om te bepalen welke resultaten mee moeten worden genomen in de aggegrate functies (NULL wordt genegeerd)


Ger, dit ziet er heel indrukwekkend uit, maar toch kom ik er niet helemaal uit. Kun jij me de weg wijzen in wat voor bestand ik deze code moet plakken?
Dank!
Gewijzigd op 29/08/2015 20:55:31 door Martin Rep
 
Eddy E

Eddy E

29/08/2015 21:04:26
Quote Anchor link
Dit haal in 1 query het SpelerID, SpelerNaam, Aantal, Gemiddelde, Hoogste en Laagste op.
Probeer de query eens gewoon uit en kijk met print_r() wat hij terug geeft.
 
Martin Rep

Martin Rep

25/10/2015 20:17:15
Quote Anchor link
Hai Ger van Steenderen - Complimenten, briljant! Pas vandaag kon ik er iemand bij halen die veel meer verstand heeft van PHP dan ik en die mij geholpen heeft je script te implementeren. We hadden het niet verwacht, maar het werkt, met wat kleine aanpassingen. Het is verder een kwestie van een beetje peuteren en dan werkt het allemaal.
Eén vraag nog. Er zijn grote verschillen in de aantallen wedstrijden die spelers afwerken. Nu loop je de (theoretische) kans dat een speler één keer speelt, een topscore haalt en het dan verder voor gezien houdt. Op die manier zou hij kampioen worden.
In onze huidige ranking lossen we dat op door alle spelers die minder dan 20 wedstrijden hebben gespeeld, 30.000 punten voor iedere niet-gespeelde wedstrijd te geven.Dat zou ook in de nieuwe oplossing passen.
Hoe kunnen we dat implementeren in jouw script?
Nogmaals enorm bedankt, ben hier erg blij mee.
Martin
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

27/10/2015 08:06:50
Quote Anchor link
Dan gebruik je in plaats van AVG() SUM() en bij minder dan 20 wedstrijden tel je er een x aantal bij op.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
    (SUM(CASE
            WHEN r.rijnummer <= 10 THEN r.score
            ELSE
                CASE
                    WHEN r.rijnummer > 10 AND r.rijnummer > s.Aantal - 10 THEN r.score
                    ELSE NULL END
        END) + CASE
            WHEN s.Aantal < 20 THEN (20-s.Aantal) * 30000
            ELSE 0 END) / 20 gemiddelde,
 
Martin Rep

Martin Rep

28/10/2015 23:06:41
Quote Anchor link
Kan ik je een PM sturen, en zo ja, hoe?


Toevoeging op 29/10/2015 06:56:35:

Martin Rep op 28/10/2015 23:06:41:
Kan ik je een PM sturen, en zo ja, hoe?

…Je hebt 'm al! (^^)
 



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.