Stai usando un browser molto obsoleto. Puoi incorrere in problemi di visualizzazione di questo e altri siti oltre che in problemi di sicurezza. . Dovresti aggiornarlo oppure usarne uno alternativo, moderno e sicuro.
id deve essere numerico (ti consiglio di usare la chiave primaria numerica (es. contatore) della tabella). Prendi i primi N record della tabella che ti servono (saranno sempre diversi) quando effettui il ciclo di lettura. Puoi anche mettere un where se ti serve.
Secondo me Access non è in grado di risolvere una query così complessa. Io risolverei questa cosa con una procedura.
Codice:
SELECT * FROM tabella WHERE id IN
(
SELECT id FROM tabella t WHERE RIGHT(campo,3) NOT IN
(
SELECT RIGHT(campo,3) FROM tabella t2 WHERE t2.id<t.id
)
)
ORDER BY RND(id)
L'ho scritta di getto e potrebbe essere sbagliata. Studiandoci un po' su forse mi viene in mente una query migliore, ma come già detto, potrebbe non riuscirla a gestire Access.
(ho ipotizzato che codice sia un campo stringa)
Mi spieco meglio
IdPratica Frazionario NumProtocollo NumeroConto TipoLavorazione DataRichiesta DataArrivo DataInizioLavorazione StatoLavorazione nominativo DataFineLavorazione Annullata
sono i campi della tabella
SELECT * FROM tabella WHERE idPratica IN
(
SELECT idPratica FROM tabella t WHERE frazionario NOT IN
(
SELECT frazionario FROM tabella t2 WHERE t2.idPratica<t.idPratica
)
)
ORDER BY RND(idPratica)
Se la query funziona ti basta cambiare il nome della tabella e nel ciclo che fai prendere i primi N record.
Se vuoi mettere N nella query (es. N=100) la prima riga diventa:
SELECT idPratica FROM tabella t WHERE frazionario NOT IN
(
SELECT frazionario FROM tabella t2 WHERE t2.idPratica<t.idPratica
)
[COLOR="Red"]AND frazionario LIKE 'abc%'[/COLOR]
SELECT idPratica FROM [COLOR="Red"]tabella t[/COLOR] WHERE frazionario NOT IN
(
SELECT frazionario FROM [COLOR="Red"]tabella t2[/COLOR] WHERE t2.idPratica<t.idPratica
)
AND frazionario LIKE 'abc%'
No. t e t2 sono due nuovi nomi per la tabella che si chiama 'tabella' (è una possibilità concessa dal linguaggio SQL).
Devi solo modificare la query, nessuna modifica al db.