Ik heb een vraag. Ik heb een aantal gegevens in de database bijvoorbeeld:
Id | Aantal
1 | 1000
2 | 1500
3 | 200
4 | 100
5 | 100
6 | 150
7 | 200
8 | 100
9 | 2
10 | 5
Nu wil ik alles selecteren en vervolgens de bovenste 10% en de onderste 10% eraf te halen. De vraag is, kan dat in 1 keer in 1 query?
Nee, moet je anders doen.
Op Paul's manier worden de rijen geselecteerd op waarde, niet op rang.
Je moet gewoon iets met limits en order by doen, dus limiteren op n/5 boven en onder, geschikt op waarde.
Weet niet of dit goede SQL is, ben daar niet goed in.
SELECT *
FROM test
ORDER BY waarde
LIMIT (SELECT count(*) FROM test)/5, (SELECT count(*) FROM test)/5*4