Ciao a tutti,
ho una domanda che mi sta tenendo sveglio da 3 giorni e non sono ancora riuscito a trovare una soluzione.

Io ho 2 tabelle così strutturate:

`materiale_prodotto` (
`id` int(9) unsigned NOT NULL auto_increment,
`name` varchar(30) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC

`prodotto` (
`id` int(9) unsigned NOT NULL auto_increment,
`description` text,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC

Nella tabella materiale_prodotto ho i seguenti valori per il campo name:

jeans
cotone
lycra
nylon

Nella tabella prodotto ho la descrizione dei prodotti (campo description) nel quale fra le altre cose (es. colore, taglia, etc. ) viene citato anche il materiale(es. jeans, cotone, etc.)

Quello che mi serve è tramite un count o altre soluzioni di veloce esecuzione per il db sapere se nella description dei prodotti presenti nella tabella prodotto è presente uno dei materiali della tabella materiale_prodotto
Se dovessi selezionare solo uno dei materiali la query sarebbe molto semplice:

select count(*) from prodotto where description like "%cotone%"

e così dovrei fare per ogni materiale.

Il mio scopo è ottenere questo con una sola query in modo che come result della query avrò ad esempio:

jeans 38
cotone 35
lycra 10
nylon 23

La struttura delle tabelle non è modificabile per cui non posso aggiungere un nuovo campo nella tabella prodotto con id_materiale per cui questa soluzione è da escludere a priori.

Ho provato a fare una serie di query ma senza risultati esatti.

Qualcuno mi può aiutare.
Sul mio sever gira php 4.4.5 e mysql 4.1.21 ma si accettano soluzioni anche utilizzando php 5 e mysql 5

Ciao
Stefano