Jag har ett litet delikat selectproblem för er att ta tag i nu ;)
Min databas ser ut så här:
En tabell med produktkategorier: Kat
En tabell med underkategorier: Delkod
En tabell med produkter: Prod
på sidan så får man först välja vilken kategori (Kat) man är intresserad av... Sedan skall man kunna välja mellan de underkategorier som finns för den huvudkategori man valt... nu kommer problemet ;)
Jag har i tabellen: Prod ett fält som heter: DelkodId och med hjälp av följande selectsats så har jag försökt att bara lista de underkategorier som finns till varje produkt som ingår i den utvalda huvudkategorin.. Men då visas samtliga underkategorier för varje produkt och så vill jag ju inte ha det ;)
Så här ser selectsatsen ut iaf:
SQLStmt = "SELECT Kat.Kategori, Kat.Katbild, Delkod.Delkod, Delkod.DelkodId, Prod.DelkodId, Kat.KatId FROM Kat, Prod, Delkod WHERE Kat.katId = Prod.KatId AND Prod.DelkodId = Delkod.DelkodId AND (Kat.KatId = " & Request("KatId") & ") Order by Delkod"
Med andra ord:
Först väljer man huvudkategori, sen kommer man till denna select som skall visa de underkategorier som finns att välja mellan...
om du vill få ut produkter ur en viss kategori enligt min variant kan du skriva:
sql = "SELECT prod.prod_namn FROM kat INNER JOIN
delkod ON kat.kat_id = delkod.kat_id INNER JOIN
prod ON delkod.delkod_id. = prod.delkod_id
WHERE kat.kat_id = 1"