Avatar billede pablo Nybegynder
29. januar 2001 - 07:32 Der er 3 kommentarer og
1 løsning

Problemer med DISTINCT ved søgning

Jeg har et problem med DISTINCT i følgende SQL forespørgsel:

----------------------------------

SELECT DISTINCT Kursushoved.Beskrivelse AS BeskrivelseK1, Kursushoved.Beskrivelse2, Kursushoved.Kursusnummer AS kursusnummerK1, Kursushoved.Kursuspris, Kursushoved.Nummer, Kursushoved.Kursusafdelingskode AS KursusafdelingskodeK1, Kursushoved.ledige_pladser, Kursushoved.Startdato, Kursushoved.Klassetrin, Vare_bogf_ringsgruppe.Kode, Vare_bogf_ringsgruppe.Kursusafdelingskode AS KursusafdelingskodeK2, maalgrupper_rel.maalgruppe, maalgrupper_rel.status, maalgrupper_rel.linienr, Bem_rkningslinie.Bem_rkning, Bem_rkningslinie.Rettet_den, Bem_rkningslinie.Rettet_af, Bem_rkningslinie.Linienr, Vare_bogf_ringsgruppe.Beskrivelse FROM ((Kursushoved LEFT JOIN Vare_bogf_ringsgruppe ON Kursushoved.Kursusgruppekode = Vare_bogf_ringsgruppe.Kode) LEFT JOIN maalgrupper_rel ON Kursushoved.Kursusnummer = maalgrupper_rel.kursusnummer) LEFT JOIN Bem_rkningslinie ON Kursushoved.Kursusnummer = Bem_rkningslinie.Nummer WHERE (1=1) AND (1=1) AND ((kursushoved.Beskrivelse LIKE \'%søgeord%\') OR (kursushoved.beskrivelse2 LIKE \'%søgeord%\') OR (kursushoved.kursusnummer LIKE \'%søgeord%\') OR (kursushoved.kursuspris LIKE \'%søgeord%\') OR (kursushoved.startdato LIKE \'%søgeord%\') OR (Bem_rkningslinie.Bem_rkning LIKE \'%søgeord%\')) AND (kursushoved.kursusafdelingskode = \'KUR\') ORDER BY kursushoved.startdato

----------------------------------

Jeg har sammenkædet 4 tabeller til en simpel søgemaskine. Her ønsker jeg tabellen: \"KURSUSHOVED\" og kolonnen \"BESKRIVELSE\" udskrevet én gang, hvis det indtastede søgeord findes i bare én af tabellerne. Selve søgningen fungerer godt nok, men hvis den f.eks. finder 8 records i en af de andre tabeller, så vil \"KURSUSHOVED.BESKRIVELSE\" blive udskrevet 8 gange.

Jeg har stirret mig blind på SQL forespørgslen, og kunne godt bruge et par gode råd fra en ekspert :-)



Avatar billede kasseper Nybegynder
29. januar 2001 - 10:24 #1
Kan du ikke bruge top(1) istedet for distinct
Avatar billede pablo Nybegynder
29. januar 2001 - 10:26 #2
top(1)? Hvordan skal jeg lave det?

Avatar billede kasseper Nybegynder
30. januar 2001 - 08:53 #3
Har du prøvet at erstatte DISTINCT med top(1).....?
Den tager jo en delmængde på en af, den returnede mængde, fra en forespørgsel.
Avatar billede pablo Nybegynder
12. marts 2001 - 07:25 #4
Der sker vist ikke mere her...
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester