Newsgroup: it.comp.appl.access
Titolo: criterio in una query

Ho un determinato campo in cui sono presenti dei valori da 0 a 100
esempio
[campo 1]
1
3
100
24
26
etc..
io vorrei riuscire ad ottenere un valore massimo di un intervallo per
capirci meglio
max valore( 1-20) .se funzionasse nell 'esempio sopra dovrei ottenere "3"
come posso fare spero di essere stato chiaro.... grazie sempre a tutti per
l'aiuto

 ha scritto nel messaggio
news:g5VYd.21482$WC1....@tornado.fastwebnet.it...

Fai 2 passi invece che uno per capire meglio:
1)Limita il Campo 1 tra i valori che ritieni:
    SELECT * FROM NomeTabella WHERE [Campo1] BETWEEN MinVal AND MaxVal
Ora quì hai ottenuto solo i Record che soddisfano il Campo(Range)
Applicando una funzione di Raggruppamento nella Query precedente al campo
[Campo1]
e prendendo il MAX ottieni esattamente quello che chiedi.
Fai qualche test e vedrai che è abbastanza Semplice.
La query che ottieni, essendo Raggruppata da origine ad un Recordset in sola
Lettura.
Se ti serve ResultSet RW lo rivediamo.
Ciao
-- 
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.mantuanet.it/alessandro.baraldi/
---------------------------------------------------------------------------

 ha scritto nel messaggio
news:g5VYd.21482$WC1....@tornado.fastwebnet.it...

Se la tabella che contiene i dati si chiama TAbella1, prova con una query di
selezione che abbia il seguente codice SQL:
SELECT Tabella1.*
FROM Tabella1
WHERE (((Tabella1.Campo1)=DMax("Campo1","Tabella1","Campo1 >= 1 AND Campo1
<= 20")));
Se poi preferisci non usare in una query la funzione di aggregazione DMax,
puoi ricorrere ad una subquery e ad una tabella derivata, ovvere usare una
query che abbia il seguente codice SQL:
SELECT Tabella1.*
FROM Tabella1
WHERE (((Tabella1.Campo1)=(SELECT Max(Pippo.Campo1) FROM [SELECT Campo1 FROM
TAbella1 WHERE CAmpo1 >= 1 And Campo1 <= 20;]. As Pippo;)));
In Ambedue i casi la query risulterà essere un recordset aggiornabile.
-- 
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
----------------------------------------------------

 adesso ci provo e vi dico qualcosa per adesso grazie !!!!

ho provato e riprovato ma niente ..... ho cambiato le cose ...vediamo se si
riesce a far funzionare
riassumiamo :
ho una query [q1] dove ci sono i seguenti campi:
[cliente]   e  [ stato]
pippo               2
pluto                4
pippo               9
paperino           5
pippo               7
pluto                5
e cosi via.....
1° dovrei filtrare quelli con [stato] 2 e 5 e 7..........(fino a qui tutto
ok)
2° prendere il valore minimo tra i due che potra essere SOLO 2 o 5 o
7.........(fino a qui tutto ok)
3° devo creare una query di aggiornamento dove in funzione dello [stato] va
aggiornare il campo [affidabilita'] nell'anagrafica clienti  (qui mi dice
che la query non e' aggiornabile )
lo so la cosa e' incasinata ma e' da questa mattina che ci sbatto la testa
.......

 ha scritto nel messaggio
news:6JZYd.21849$WC1....@tornado.fastwebnet.it...

Per prima cosa io ho risposto al tuo primo messaggio che non parlava affatto
di una query di aggiornamento ma genericamente di una query (senza
qualificazioni si parla normalmente di una normale query di selezione e non
certo di una query di comando).
Poi ora tu dici che il recordset di origine è una query e non una tabella:
per operare su una query con una query di aggiornamento occorre che la tua
[q1] sia un recordset aggiornabile: ebbene, è un recordset aggiornabile?
Nel tuo primo messaggio parlavi di rilevare il valore massimo di un range di
valori; ora invece parli del valore minimo tra tre valori; ma ti serve di
rilevare il valore massimo o il valore minimo?
Infine parli di query di aggiornamento, ma di quale tabella?
Cosa è il campo [affidabilità]?
Quale query Access ti indica come non aggiornabile?
Con il mio precedente messaggio ho sicuramente dato una soluzione al tuo
primo messaggio; soluzione che, al contrario di quello che sostieni, è
sicuramente funzionante.
Mi sembra di capire che le tue necessità siano totalmente cambiate rispetto
al quesito che hai posto nel tuo primo messaggio, quindi ritengo che sarebbe
certamente necessario che tu riponga in dettaglio gli estremi del tuo nuovo
problema, meglio se lo farai aprendo un nuovo thread, visto che il quesito è
nuovo.
