Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

mostra solo le categorie che contengono prodotti

Per prima cosa dovresti selezionare tutte le categorie in cui esistono prodotti. Nei passaggi successivi seleziona le categorie madri.

WITH CTE AS
(
SELECT tbl_categories.*
FROM
tbl_categories
JOIN tbl_productInCategory on tbl_productInCategory.CID = tbl_categories.CID

UNION ALL 

SELECT tbl_categories.*
FROM tbl_categories 
JOIN CTE on tbl_categories.CID = CTE.motherCategory 
)
SELECT DISTINCT * FROM CTE