salve a tutti,

ci sto sbattendo un pò la testa, ma non riesco ad arrivare ad una soluzione "ottimizzata e veloce" ...


Ho una tabella cosi strutturata

ID | Numero_tel |
1 0256565665
2 0215151212
3 0685181818
4 0818484848
5 0256565665

Come vedere l'ID 1 e ID 5 hanno lo stesso numero di telefono.

Poi un'altra tabella:

ID | Numero_tel | Esito
1 0256565665 N
2 0215151212 S
3 0685181818 S
4 0818484848 S
5 0256565665 N


La mia query dovrebbe prendere distintamente (quindi senza doppioni) tutti i numeri di telefono ...e quindi faccio SELECT DISTINCT(Numero_tel) FROM Tabella1

Poi controllare nella tabella2 l'esito ...ovvero:

- Se nella tabella "esiti" quel numero ha avuto esito N almeno 2 volte, allora fai delle operazioni (Via ASP, una cancellazione dalla TAB1) ...altrimenti non fa nulla.

Questo script è solo un controllo per andare a verificare l'esistenza di numeri di telefono, e quindi se l'esito della chiamata è S ...il numero è esatto. Purtroppo nella TAB1 ho vari nominativi con lo stesso numero (non ci posso far nulla e deve essere così)...e nella tabella2 l'esito può essere S o N sullo stesso numero (per operazioni di immissione errate, o altro) ...in ogni caso a me servirebbe che l'esito si N almeno 2 volte ..per procedere alla cancellazione da Tabella1.

Attualmente ho operato con 2 recordset ovvero:

SELECT DISTINCT(Numero_tel) FROM Tabella1

While not questo_rs.eof

SELECT FROM TABELLA2 WHERE Numero_tel='questo_rs("numero_tel") AND esito ='N'
if recordcount => 2 then
'operazioni
end if

quest_rs.movenext
wend ..

...bene (ovviamente ho abbreviato e di molto la parte ASP ), funziona, ma su 9000 records ci mette 3 minuti a caricare su un mio server dedicato ...e questo credo non sia cosa buona e giusta ...chi mi da na mano ?

Grazie in anticipo.