2009-06-21, 15:17
#1
Tjenare, har lite problem med en query jag inte riktigt får till.
Jag har en tabell som heter categorys. Den här tabellen är tänkt att innehålla alla kategorier och underkategorier till produkter i min databas. Såhär ser strukturen ut:
Här ser man att jag har två huvudkategorier. Kategori 1 har tre underkategorier som har till categoryID 1 för att visa att de är underkategorier. Hoppas ni förstår tänket.
Låt oss nu säga att jag har en tabell med produkter, typ:
Finns det någon fin query jag kan använda mig av för att visa vilka kategorier och underkategorier en specifik vara ligger under? Hade varit fint att få svaret ungefär såhär:
Tack på förhand
Jag har en tabell som heter categorys. Den här tabellen är tänkt att innehålla alla kategorier och underkategorier till produkter i min databas. Såhär ser strukturen ut:
Kod:
+------------+----------------------+-----------------+
| categoryID | category | isSubcategoryTo |
+------------+----------------------+-----------------+
| 1 | Kategori 1 | NULL |
| 2 | Subkategori 1 | 1 |
| 3 | Subkategori 2 | 1 |
| 4 | Subkategori 3 | 1 |
| 5 | Kategori 2 | NULL |
| 4 | Subkategori 1 | 5 |
+------------+----------------------+-----------------+
Här ser man att jag har två huvudkategorier. Kategori 1 har tre underkategorier som har till categoryID 1 för att visa att de är underkategorier. Hoppas ni förstår tänket.
Låt oss nu säga att jag har en tabell med produkter, typ:
Kod:
--------------------------------------------
produktID | Produktnamn | kategoriID
--------------------------------------------
1 Produkt 1 4
Finns det någon fin query jag kan använda mig av för att visa vilka kategorier och underkategorier en specifik vara ligger under? Hade varit fint att få svaret ungefär såhär:
Kod:
---------------------------------------------------------------------------------
produktID | Produktnamn | kategoriID | Huvudkategori | Subkategori
---------------------------------------------------------------------------------
1 Produkt 1 4 Kategori 1 Subkategori 4
Tack på förhand