Salve,
ho un db mysql con circa 6000 record dentro una tabella 'prodotti' del tipo
ID NOME MARCA MODELLO
1 'test rosso' x y
2 'test bianco' .. ...
3 'test giallo' ... ....
.....
1000 'test verde' ... ....
1001 'prova bianco' ... ...
.....
3000 'prova giallo' ... ...
ecc. ecc.
Vorrei una select che mi visualizzasse solo 1 dei record con il nome quasi uguale cioè vorrei una visualizzazione di questo tipo
'test rosso'
'prova bianco'
ecc.
cioè che prenda solo un record con nome='test%', uno con nome='prova%' ecc.
Avevo provato una soluzione con una query che andava a selezionare tutti gli ID dei prodotti con SELECT DISTINCT substring_index(nome,' ',1) FROM prodotti
che restituiva l'insieme degli ID (1, 1001, ...) e creato questo gruppo di ID validi creavo una select di visualizzazione in maneria tale che l'ID IN (1,10001, ..)
Ci vuole un casino di tempo prima che mi venga visualizzato l'elenco desiderato.
Esiste un modo per creare una sola SELECT di visualizzazione di tutti i prodotti inserendo una condizione nel WHERE (o dove vi pare) per avere l'elenco desiderato?

Rispondi quotando