Ciao grazie per il parere ,quello che mi premeva era ottimizzare lo script e in nottata ho trovato una soluzione abbastanza semplice e credo corretta.
In pratica eseguiro una query sul db che mi estrae gli ultimi risultati della tabella

SELECT * FROM table ORDER BY id DESC LIMIT 50

in questo caso la query è ottimizzata in quanto il campo id con cui eseguo l ordinamento è una chiave primaria e quindi gia indicizzata da mysql

dopodiche passero i valori estratti ad un array e su questo array faro i controlli che mi servono all interno di un ciclo for eliminando in tal modo la clausola where....

Che ve ne pare?

Grazie ciao