Toon posts:

[Access + SQL] TOP x probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
In Access heb ik de volgende query

code:
1
2
3
4
SELECT TOP 6 a.Achternaam, a.Voornaam, count(p.PlanningID)
FROM Agent a, Planning p
WHERE a.AgentID = p.AgentID
ORDER BY count(p.PlanningID) ASC


Deze query pakt de bovenste 6 records van de recordset. wat ik eigenlijk wil is dat ik van die 6 elk willekeurig getal kan maken, oftewel er een parameter voor in de plaats kan zetten:

code:
1
2
3
4
SELECT TOP [Aantal] a.Achternaam, a.Voornaam, count(p.PlanningID)
FROM Agent a, Planning p
WHERE a.AgentID = p.AgentID
ORDER BY count(p.PlanningID) ASC


Dit pikt Access echter niet. Ik heb ook al geprobeerd om die 6 te vervangen door een subquery (dat het getal uit een andere tabel komt) maar ook dat krijg ik niet voor elkaar.

Weet iemand een manier om dit in SQL op te lossen zodat ik niet telkens een query aan moet passen als het getal veranderd.

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:04
Ik denk dat de enige manier om dat op te lossen, de query dynamisch opbouwen is.

https://fgheysels.github.io/


Verwijderd

Topicstarter
Je bedoelt twee strins aanmaken met SQL die ik al heb:

String 1: SELECT TOP
String 2: a.Achternaam, a.Voornaam, count(p.PlanningID)
FROM Agent a, Planning p
WHERE a.AgentID = p.AgentID
ORDER BY count(p.PlanningID) ASC

En dan tussen string 1 en 2 het getal plakken.
In de trant van:

code:
1
String1 & [Getal] & String2

Verwijderd

het ziet er naar uit dat je ongeveer hetzelfde wilt bereiken als ik: [rml][ Access2000 + ASP] Sort Order input parameter[/rml]

ik heb nog geen oplossing kunnen vinden, mocht je SQL0server ter beschikking hebben, daar kan het volgens mij wel in :)

Verwijderd

Topicstarter
Tja als er niets anders opzit dan zal ik het maar gewoon op de dynamische query manier doen. Niet echt een schoonheidsprijs maarja...

Verwijderd

ik ben nu ook bezig met een applicatie waar een uitgebreide zoekfunctionaliteit in moet komen. Ik ben bang dat ik deze ook dynamisch moet opbouwen in m'n code, terwijl ik verder alle SQL-commando's in queries heb verwerkt. Jammer maar helaas.

Of ik kies voor 30-queries (fictief getal ;) ).......

Verwijderd

Topicstarter
Hehehe :) Leu is dat. De Top x query moet elk getal tussen de 1 en de 60 kunnen zijn. Beetje jammer van de ctrl-c ctrl-v.

Heb helaas ook al op andere plekken SQL in de code moeten verwerken, maargoed...

Verwijderd

Kent Access niet de variabele ROWCOUNT?
Pagina: 1