22. januar 2002 - 15:54Der er
4 kommentarer og 1 løsning
Søgning i flere tabeller
Jeg har set mig blind på en søgefunktion jeg er ved at lave.
Jeg har 3 tabeller. Kategori som indeholder kategoriid og navn Produkt som indeholder produktid, navn og fKategoriid Keyword som indeholder keyid, keyword, point og fProduktid
Keyword er en tabel som indeholder nogle keywords der er knytte på de enkelte produkter, et produkt kan godt have flere keywords.
Jeg vil lave en søgefunktion som søger i Keyword-tabellen. Finder den søgeordet i tabellen finder du ud af hvilke produkter der er knyttet til søgeordet. Et søgeord kan godt være på flere produkter. Den skal så liste søgningen sorteret efter kategorinavn og overskrift. Søgningen skal vise egentlig kun vise overskriften.
Hvordan gør man det?
Jeg anvender JET SQL så jeg kunne forestille mig at det har noget med Inner Join at gøre.
SELECT Keyword.keyword AS keyword, Produkt.navn AS pNavn, Kategori.navn AS kategori FROM Keyword, Produkt, Kategori WHERE Keyword.fProduktid = Produkt.produktid AND Produkt.fKategoriid = Kategori.kategoriid AND Kategori.keyword LIKE '%et keyword%' GROUP BY Kategori.navn
sql = "SELECT * FORM ((tblFaqEmner INNER JOIN tblFaqKategori ON tblFaqEmner.fKategoriid = tblFaqKategori.kategoriid) INNER JOIN tblKeywords ON tblFaqEmner.faqid = tblKeywords.fFaqid) WHERE keyword='test'"
Men den giver følgende fejl: Microsoft JET Database Engine (0x80040E14) Syntax error (missing operator) in query expression '* FORM ((tblFaqEmner INNER JOIN tblFaqKategori ON ....
Du får pointene for din indsats. Jeg prøver at poste et nyt spørgsmål med den konkrete SQL-forespørgsel istedet.
Tak for din tid coltau. :0)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.