Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

[SQL] Eerst 'Group By' en dan pas 'Top'

Bremmeteng
2 antwoorden
  • Hallo,

    ik heb een tabel van meeteresultaten met de volgende kolommen:

    registratieid
    productid
    metingnaam
    metingwaarde
    metingdatum

    nu wil ik graag per type meting (metingnaam) het gemiddelde over de laatste 100 metingen hebben tot en met een bepaalde datum.

    Waar het op neer komt is dat ik de een groepeer actie (op meetingnaam) wil uitvoeren in combinatie met het TOP statement. Maar nu wil ik dat eerst gegroepeerd wordt en daarna pas de laatste 100 wordt gepakt. Is dit uit te voeren in een query, zonder dat ik voor elke metingnaam een nieuwe query moet maken?


    thx,

    groet, Bram
  • met deze link, via google gevonden, zou je het antwoord samen moeten kunnen stellen. Makkelijk is het niet. Het is dan ook de vraag of je niet misschien op een andere manier dit wilt oplossen:
    1) niet de eis opleggen om het gemiddelde over de laatste 100 te nemen maar gewoon over alle in de afgelopen x dagen. Dit is waarschijnlijk nog sneller ook, ook wanneer er 10.000 metingen zijn; AVG is sneller dan alle (om)wegen om alleen de laatste 100 eruit te halen
    2) zorgen dat in de tabel altijd alleen de laatste 100 metingen staan; een erg ranzinge oplossing…

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.