Avatar billede ha9953 Nybegynder
15. marts 2005 - 15:50 Der er 4 kommentarer og
1 løsning

DISTINCT i stored procedure

Jeg har følgende stored procedure:

SELECT menupunkt.link AS plink, menu.*
FROM menu
INNER JOIN menupunkt
ON menu.menuid = menupunkt.menuid
WHERE (menu.synlig = 1)
AND (menupunkt.synlig = 1)
AND (menu.portalid = @portalid)
ORDER BY menu.placering, menupunkt.placering

Den udskriver fra menu, hvor der er tilhørende punkter i menupunkt.

Men hvis der er flere menupunkter der tilhører menu, udskriver den flere linier med ens menu.navn

Jeg skal have påført en DISTINCT så den kun udskriver hver menu.navn en gang..

Håber det er til at forstå, er selv ved at blive forvirret :-)
Avatar billede lorentsnv Nybegynder
15. marts 2005 - 15:57 #1
Normalt er syntaksen for brug af DISTINCT

SELECT DISTINCT columns
FROM tabel
Avatar billede lorentsnv Nybegynder
15. marts 2005 - 15:59 #2
Det ser ud som du selekterer en del forskellige kolonner i din select setning. Ønsker du en distinct på kun nogle få af disse kolonner?

I så fald er det måske en GROUP BY du skal  bruge.

Men se i første omgang om du kan bruge

SELECT DISTINCT menupunkt.link AS plink, menu.*
FROM menu
INNER JOIN menupunkt
ON menu.menuid = menupunkt.menuid
WHERE (menu.synlig = 1)
AND (menupunkt.synlig = 1)
AND (menu.portalid = @portalid)
ORDER BY menu.placering, menupunkt.placering
Avatar billede ha9953 Nybegynder
16. marts 2005 - 00:32 #3
Det hjælper ikke...

De 2 tabeller ser ud som følgende:

menu
-------
menuid
placering
navn
beskrivelse
link
target
synlig
type
portalid

menupunkt
-------
punktid
placering
navn
beskrivelse
link
target
synlig
type
portalid


Det jeg gerne vil frem til er følgende:

Jeg vil have alle poster i [menu] hvor portalid er = med f.eks. 5.
Samtidig vil jeg for hver post fra [menu], have udtrukket den første post [menupunkt.link] fra [menupunkt] hvor [menupunkt.menuid] = [menu.menuid]

Som det er nu får jeg trukket f.eks 3 linier ud med det samme menuid, da der findes 3 poster i menupunkt med det samme menuid

Jeg er ved at blive rundtosset af det her....
Avatar billede ha9953 Nybegynder
16. marts 2005 - 00:32 #4
ups menupunkt tabellen skal se ud som følgende:

menupunkt
-------
punktid
placering
navn
beskrivelse
link
target
synlig
type
menuid
portalid
Avatar billede ha9953 Nybegynder
16. marts 2005 - 20:32 #5
lukker dette spørgsmål, og opretter en anden da der ikke er kommet nogen løsning
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
Computerworld tilbyder specialiserede kurser i database-management

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