Avatar billede jensen2005 Nybegynder
20. oktober 2005 - 08:04 Der er 4 kommentarer og
1 løsning

Er det muligt at lave en sådan SQL-sætning

Hej Eksperter
Er det muligt at lave en SQL der trækker alt ud fra to tabeller(Tabel hovedmenu og tabel undermenu) men data placeres sådan her :

Hovedmenu a
-    undermenu 1.a
-    undermenu  2.a
Hovedmenu b
Hovedmenu c
-    undermenu 1.c
-    undermenu 2.c
-    undermenu 3.c

Har forsøgt med en Left-join men der blev resultatet:

Hovedmenu a
-    undermenu 1.a
Hovedmenu a
-    undermenu  2.a
Hovedmenu b
Hovedmenu c
-    undermenu 1.c
Hovedmenu c
-    undermenu 2.c
Hovedmenu c
-    undermenu 3.c


Mvh
Avatar billede pgroen Nybegynder
20. oktober 2005 - 08:18 #1
Prøv med en UNION:

SELECT  'Hovedmenu ' || hvalue tekst, hvalue, -1
    FROM hovedmenu
UNION
SELECT  '-  undermenu ' || hvalue || '.' || uvalue tekst, hvalue, uvalue
    FROM undermenu
ORDER BY 2, 3

hvor 2. og 3. kolonne kun bruges til sortering
Avatar billede pgroen Nybegynder
20. oktober 2005 - 08:27 #2
- Eller, om man fortrækker det:

SELECT  tekst
    FROM (SELECT 'Hovedmenu ' || hvalue tekst, hvalue, -1 uvalue
            FROM hovedmenu
          UNION
          SELECT '-  undermenu ' || hvalue || '.' || uvalue tekst, hvalue, uvalue
            FROM undermenu)
ORDER BY hvalue, uvalue
Avatar billede arne_v Ekspert
20. oktober 2005 - 09:11 #3
Jeg tror at du skal lave en simpel JOIN på de 2 tabeller og så
lade din applikation kun udskrive hovedmenu når den ændrer sig
Avatar billede jensen2005 Nybegynder
20. oktober 2005 - 23:38 #4
Hej Arne V og pgroen og tak for de hurtige svar…

Med inspiration fra Arne V lavede jeg en Left Join(Left Join fordi den også skal hente hovedmenupunkter selvom at der ikke er nogle tilhørende undermenupunkter!).

Og brugte herefter en while løkke med en if/else til at sortere menupunkter..

Målet var kun at have en database connection åben til at hente menuen – det lykkes….

SQL-løsningen ligger synes jeg var lidt for svær! – jeg må studere lidt mere SQL J…

Jeg vil gerne give point til Arne V…
Avatar billede arne_v Ekspert
20. oktober 2005 - 23:40 #5
jeg ligger et svar så
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