Avatar billede jenslyn_s Nybegynder
10. februar 2005 - 09:21 Der er 6 kommentarer og
1 løsning

Problemer med WHERE-claus

WHERE KampPlan.HoldA = Hold.HoldID AND KampPlan.HoldB = Hold.HoldID

Skulle jo gerne have begge holdNavne, men det kan jeg jo ikke, da et felt jo kun kan have én værdi.

---->
SELECT KampPlan.*, Hold.* FROM KampPlan, Hold WHERE KampPlan.HoldA = Hold.HoldID AND KampPlan.HoldB = Hold.HoldID
<----
Avatar billede fennec Nybegynder
10. februar 2005 - 09:30 #1
SELECT KampPlan.*, h1.navn as h1Navn, h2.navn as h2Navn FROM KampPlan, Hold h1, Hold h2 WHERE KampPlan.HoldA = h1.HoldID AND KampPlan.HoldB = h2.HoldID
Avatar billede jenslyn_s Nybegynder
10. februar 2005 - 10:45 #2
Tak, den skal du have point for.
Avatar billede fennec Nybegynder
10. februar 2005 - 11:10 #3
.o) <-- One Eyed Jack
Avatar billede jenslyn_s Nybegynder
10. februar 2005 - 12:21 #4
Argh, pis. kan ikk helt få det til at fungere...

|Hold
|HoldID (pk)
|HoldNavn

Har fået det omskrevet til dette, men er fungerer ikke(sikkert forkert omskrevet i.fh. til dit):

SELECT KampPlan.*, Hold.HoldNavn as h1Navn, Hold.HoldNavn as h2Navn FROM KampPlan,
Hold WHERE KampPlan.HoldA = Hold.HoldID AND KampPlan.HoldB = Hold.HoldID

Hilfe, bitte
Avatar billede fennec Nybegynder
10. februar 2005 - 12:24 #5
Du skal joine Hold to gange :o)

SELECT KampPlan.*, hA.HoldNavn as h1Navn, hB.HoldNavn as h2Navn FROM KampPlan,
Hold hA, Hold hB WHERE KampPlan.HoldA = hA.HoldID AND KampPlan.HoldB = hB.HoldID
Avatar billede fennec Nybegynder
10. februar 2005 - 12:33 #6
Det er lidt indviklet, så jeg prøver lige at forklare hvad der sker:

Hold tabellen bliver joinet to gange. Det er så nødvendigt at give dem et kaldenavn så man kan kende forskel på dem. Her har jeg brugt hA og hB. Så joiner du dem på KampPlan HoldA på hA tabellen og HoldB på hB. Det er det der gøres med "KampPlan.HoldA = Hold.HoldID AND KampPlan.HoldB = Hold.HoldID". Tilsidst trækker du så navnene ud. "hA.HoldNavn" for holdA og "hB.HoldNavn" for holdB. Disse får også et kaldenavn så man kan kende dem.

Læg mærkt til at man bruger tabel kladenavnet i WHERE og SELECT til at bestemme hvilken tabel der bruges.
Avatar billede jenslyn_s Nybegynder
10. februar 2005 - 12:39 #7
Ja, lidt indviklet, men forstår dig godt. Og tak, det virker nu :)
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