Avatar billede agf2413 Nybegynder
07. januar 2015 - 17:30 Der er 5 kommentarer og
1 løsning

Hjælp til SQL join

Jeg har med en sql query jeg håber er er nogle der kan hjælpe med.
Jeg har følgende to tabeller:

Table1:
ID  |  Name
1      navn
2      Navn2
3      Navn3


Table2
RefID  |  type  |  value
1        pris        20
1        adresse  vej1
2        pris        30
2        adresse  vej2
3        pris        40
3        adresse  vej3

Jeg vil gerne med en sql query få navnet, prisen og adressen.
Jeg har prøvet at lave det i en SQl fiddle som kan ses her:
http://sqlfiddle.com/#!3/c371e/11

Det er lykkedes mig at få alt information ud jeg ønsker men jeg få 2 af hver. Håber det giver lidt mening og der er nogle der har en genial idé ;)
07. januar 2015 - 19:15 #1
Det var ikke det du spurgte om, men hvorfor laver du denne tabelstruktur? Efter det du viser ville det hele kunne rummes i en enkel tabel, således;

id Name Price Adresse
1  navn    20  vej1
2  navn2  30  vej2
3  navn3  40  vej3

og så ville din query være ligefrem:  SELECT * FROM Table1
Avatar billede agf2413 Nybegynder
07. januar 2015 - 19:24 #2
Ja det kan virke lidt mærkeligt at lave det på den måde.
De to tabeller er del af en støre wordpress installation og jeg kan derfor ikke ændre på opsætningen. Der er desuden flere ting i tabellerne men har blot lavet det så enkelt som muligt her i mit spørgsmål.

Men ellers har du helt ret ja, vil være en dum måde at gøre det på hvis det kun var til dette.
07. januar 2015 - 19:46 #3
Noget i retning af (ikke testet)

SELECT Table1.Name, (SELECT Table2.value WHERE Table2.RefID = Table1.ID AND Table2.type = 'pris') AS pris, (SELECT Table2.value WHERE Table2.RefID = Table1.ID AND Table2.type = 'adresse') AS adresse
07. januar 2015 - 21:07 #4
Sludder og vrøvl (det er for længe siden jeg selv har været igang).

SELECT t1.Name, (SELECT t2.value FROM Table2 t2 WHERE t2.RefID = t1.ID AND t2.type = 'pris') AS pris, (SELECT t2.value FROM Table2 t2 WHERE t2.RefID = t1.ID AND t2.type = 'adresse') AS adresse FROM Table1 t1
Avatar billede agf2413 Nybegynder
07. januar 2015 - 21:40 #5
Perfekt, lige hvad jeg ledte efter.
Let og enkelt, tak for hjælpen! ;)

Du smider blot svar så får du point.
07. januar 2015 - 22:15 #6
Svar fra mig.
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