Ciao a tutti,
sinteticamente:

5 tabelle così strutturate:
(le coppie di asterischi servono a farvi capire le chiavi di collegamento tra le tabelle sulla base delle quali posso andare a costruire le mie JOIN)

PRODOTTI
IDprod * | nomeprod | IDcat | IDsubcat | IDsubsubcat ****
1 | pippo | (vuoto) | (vuoto) | 1
2 | pluto | (vuoto) | (vuoto) | 2
3 | paperino | (vuoto) | (vuoto) | 3
(ecc... con tanti altri record con differenti IDsubsubcat)

CATEGORIE
IDcat ** | nomecat
1 | penne
2 | matite
(ecc...)

SOTTOCATEGORIE
IDsubcat *** | nomesubcat | IDcat **
1 | a sfera | 1
2 | stilografiche | 1
(ecc...)

SOTTOSOTTOCATEGORIE
IDsubsubcat **** | nomesubsubcat | IDsubcat ***
1 | inchiostroblu | 1
2 | inchiostronero | 1
3 | inchiostrorosso | 1
(ecc...)

FOTO
IDfoto | nomefile | IDprod *
1 | pippo1.jpg | 1
2 | pippo2.jpg | 1
3 | pluto.jpg | 2
4 | paperino.jpg | 3
(ecc...)

Ebbene, mettiamo il caso di trovarci nella pagina della categoria "penne" (catalogo.asp?IDcat=1), come faccio a tirare fuori tutte le foto (solo il campo "nomefile" della tabella FOTO) dei prodotti che fanno parte della categoria "penne"?

Voi direste... semplice: specifichi l'IDcat in corrispondenza di ciascun prodotto e risolvi con una banale join... e invece no!

Infatti... per motivi troppo complicati da spiegare (legati alla creazione dinamica di un sistema di navigazione "ad albero" delle varie categorie, sottocategorie e, quindi, prodotti) non ho la possibilità di "collegare" le tabelle PRODOTTI e CATEGORIE andando a specificare l'IDcat per ciascun prodotto... bensì il livello di categoria più "basso" di cui il prodotto fa parte... lo so che è un modo cervellotico, ma è proprio strutturato così e non posso assolutamente cambiarlo.

Per questo motivo, quindi, se rivedete la tabella PRODOTTI sopra riportata, troverete i campi "IDcat" e "IDsubcat" vuoti ed i soli campi "IDsubsubcat" (il livello di categoria più basso) pieni, in virtù di quanto sopra esposto.

Pertanto il mio grosso problema è arrivare a tirar fuori la lista di tutte le foto della categoria "penne" (tabella CATEGORIE), INDIPENDENTEMENTE dalla sottocategoria e sottosottocategoria di appartenenza... avendo come unico dato, per ciascun prodotto, l'IDsubsubcat... quindi SQL deve andare a risalire attraverso i 2 livelli di categoria soprastanti (tabelle CATEGORIE e SOTTOCATEGORIE) i quali, ricordo, sono uniti dalle chiavi comuni di collegamento segnate dagli asterischi.

Inoltre (importante ma non fondamentale) avrei bisogno che tale listato fosse, a sua volta, filtrato per far sì da avere solamente 1 fotografia per ciascun prodotto (GROUP BY?).

Insomma, un gran casino... e non so veramente come fare xchè... questo non è propriamente il mio mestiere...

Lo so, è spiegato da far schifo... ma spero che qualcosa si capisca...

Vi ringrazio per l'aiuto (alias, graditissimo esempio di stringa SLQ con join) e ditemi pure se ci fosse qualcosa di poco chiaro (e mi sa che c'è....... ).

Grazie davvero di cuore! t.