Marco Quarona ha scritto:
Nel caso in cui invece vi sia un indice con entrambi i campi (CITTA e
TIPO) non ci sono santi che tengano: la seconda è ovviamente più
veloce. Poi possono esserci da fare sempre considerazioni sulla
granularità, ma di certo la prima non potrà _mai_ essere più veloce
della seconda.
Caro Marco, ti scordi una piccola cosa. Le Tabelle delle due query NON
HANNO lo stesso set di Record: la prima contiene SOLO I CLIENTI, la
seconda TUTTE LE ANAGRAFICHE, quindi la prima sarà SEMPRE più veloce
della seconda perchè il campo TIPO semplicemente non esiste. Senza
questa piccola osservazione, possiamo scrivere quello che vogliamo ed è
sempre tutto giusto.
Ovviamente, più ci sono record e più le differenze di tempo aumentano.
E quanto ti ho appena descritto si mostrerà in modo più netto.
Quanto sto dicendo, non lo affermo solo in base alla logica di come
funziona un db, ma anche in base all'esperienza che ho maturato... e
le tabelle del sistema di cui dicevo che hanno 100.000 record non sono
quelle grandi. Quelle grandi hanno 50 milioni di record.
Non ho idea su che sistemi lavori, 50 milioni di Record per una Tabella
mi sembrano comunque tanti da gestire in ambito PC. Se parliamo di
Mainframe, allora tutto cambia.
Poi, io uso Oracle che è un database abbastanza serio, ma credo che
anche Access sappia valutare correttamente le query di cui sopra,
usando gli indici che ha, prima di fare scansioni su tutta la tabella.
Come sai, ogni Db ha il suo metodo di ottimizzazione delle Query, quindi
non è detto che la strategia migliore sia sempre e comunque la stessa,
soprattutto in caso di ricerce complesse.
Oracle è un ottimo prodotto, ma non è proprio alla portata di un utente
medio di PC. Access funziona bene, è abbastanza veloce ma non è
paragonabile ad un server di Db.
Il povero Base con HSQL si siede già con 500 schede, figurati.....
Ciao
--
Filippo Cerulo
blog : http://6of9.softcombn.com/
e-mail : [EMAIL PROTECTED]
web : www.softcombn.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]