Newsgroup: it.comp.appl.access
Titolo: Ricerca valore superiore e inferiore su tabella

Il mio problema:
Una tabella con dei numeri di riferimento e le relative date
esempio
rif.        data
1        1.1.2005
2        1.1.2005
3        2.1.2005
4        3.1.2005
7        6.1.2005
9        8.1.2005
10      9.1.2005
ebbene io vorrei applicare una funzione in modo che se inserisco, per 
esempio, il numero 5 mi venga restituita la data del rif. inferiore (rif. 4, 
data 3.1.2005) e la data del rif. superiore (7, 6.1.2005) in modo da poter 
fare la verifica che la data che inserisco per il 5 sia >= 3.1.2005 e <= 
6.1.2005.
La parte che non riesco a capire è come cercare tra i record il numero di 
rif. subito inferiore a 5 (quindi solo il 4) e subito superiore a 5 (quindi 
solo il 7).
Spero di essermi spiegato...
Forse con dmax  e dmax ?
Forse dovrei applicare una dmax su una query che estragga con dmin tutti i 
valori inferiori al mio riferimento ? (e cosi' troverei il 4) e con una dmin 
sulla query che estragga con dmax tutti i valori superiori al mio 
riferimento ?
In ogni caso io mica la so scrivere una cosa cosi' ...
Una volta che ho trovato la prima ricorrenza inferiore (nel mio esempio il 
4) credo di dover utilizzare dlookup per estrarre la data di quel record e 
analogamente per la ricorrenza superiore. E' giusto ?
O magari c'e' una funzione bell'è fatta in access e io non sono riuscito a 
trovarla ... speriamo :-)
Grazie in anticipo a chi può darmi una mano.
Rick 

 6.1.2005.
E se inserisci 4?
Comunque:
SELECT data FROM miaTabella WHERE
rif=(SELECT MAX(rif) FROM miaTabella WHERE rif<5) OR
rif=(SELECT MIN(rif) FROM miaTabella WHERE rif>5);
HTH.
Alessandro

 Alessandro
Rick 

 fa a funzionare :-)
Prego!
Alessandro

 esperti qui potranno sicuramente chiarire.
MI è sembrato di capire che vadano inserite in formato mese/giorno/anno
E infatti torna con il tuo discorso.

 ...
Hai provato a leggere la guida in linea di Access? Non so la tua versione,
ma quella di A97 č ben fatta e sono certo che puň aiutarti a capire i
"fondamentali" e fare qualche esperimento.
HTH.
Alessandro

 Alessandro
Il problema dell'11 non mi preoccupa tanto ... credo che con un po' di 
rudimentali if then ne posso uscire onorevolmente.
Un po' come accendere un fuoco con i due bastoncini, ma sto' facendo gavetta 
... :-)
Per il problema di chiamare la query da codice ... mi ci sto' fondendo, ma 
forse è meglio andare a letto.... domani mattina sarà sicuramente più facile 
:-)
Di nuovo grazie !
Rick
P.S.:  ma HTH che significa ? Io arrivo al LHG che è cosa da motociclisti 
... ma HTH ... boh 

 motociclisti ... ma HTH ... boh
Hope This Helps.
(LHG manca a me, ma più in là dello scooter non vado, per cui credo sia
normale).
Alessandro

 normale).
Ah ... bello HTH.
LHG stà per left hand greetings: il saluto convenzionale con le dita a V 
della mano sinistra dei motociclisti.
Ho detto a V, non solo il dito medio eh ! :-)
R. 

 ... ma HTH ... boh
Se vuoi ottenere i valori e memorizzarli in una variabile prova cosě:
Dim dataMax as date, dataMin as date, rif as integer
rif = 5
dataMax = dmax("data","nometabella","rif<" & rif)
dataMin = dmin("data","nometabella","rif>" & rif)
praticamente il suggerimento di Alex NSB, solo che vengono utilizzate le due 
funzioni DMax e DMin (vedi help)...
Ciao.
-- 
Sergio MAZZA 

 le due funzioni DMax e DMin (vedi help)...
Non so cosa intendevi esattamente con dataMax e dataMin: io avrei invertito
le due variabili, ma comunque il concetto č quello. :-)
Inoltre si puň aggiungere
NZ(dmin("data","nometabella","rif>" & rif),date())
per avere la data odierna nel caso in cui non ci siano records con rif
superiore al numero scelto.
Alessandro

 superiore al numero scelto.
Grazie Sergio e grazie Alex.
L'help del Dmax/Dmin ieri sera ci sono stato un sacco ma non c'e' niente da 
fare non ho ancora la padronanza del "mezzo" che mi consenta di utilizzare 
con elasticità i criteri. Solo ora che leggo la soluzione dico: "Ahhhh era 
facile"...
In effetti pensavo che una volta richiamata la funzione dmax sul campo data 
io potessi utilizzare dei criteri solo sul campo data, cosa che ovviamente 
non è...
Accidenti !
:-)
Rick 

 Alessandro
Evvabbé come sei fiscaleee!!!
Invertendo l'ordine dei fattori il raccolto non cambia...
Ciao.
-- 
Sergio MAZZA