Trädvy Permalänk
Medlem
Plats
London
Registrerad
Jul 2003

mysql problem- join?

Hejsan. har lite SQL problem.

Har gjort detta hitills:

SELECT fixtures.fixteam1, fixtures.fixteam2, gpk_team.teamname
FROM fixtures, gpk_team
WHERE (
fixtures.fixteam1 = gpk_team.teamid
)
LIMIT 0 , 30

har detta i min databas:

<b>fixtures</b>
fixid
fixteam1
fixteam2

<b>gpk_team</b>
teamid
teamname

men vill att "fixtures.fixteam1" och "fixtures.fixteam2"
ska visas som "gpk_team.teamname" via "gpk_team.teamid.
]
Hur kan jag göra detta?

Hoppas ni förstår vad jag menar.

Mvh,

J

SELECT fixtures.fixteam1, fixtures.fixteam2, gpk_team.teamname
FROM fixtures, gpk_team
WHERE (
fixtures.fixteam1 = gpk_team.teamid
)
LIMIT 0 , 30

AMD OPTERON athlon 3800 x2. DFI LANPARTY nforce 4ULTRA D, 2x1 gig twinmos Chassi Themlake 3,3| GC = Powercoler x850 XT Vivo, Logitech G15, Aiwa surround System, NEC DVD Burner, 1 x 1 x 200 gig 1x500 gigmaxtor SATA 1, 1 x180 gig Western Digital 1x320 western

Trädvy Permalänk
Medlem
Plats
Västerås
Registrerad
Maj 2007

Kan det vara ungefär såhär du vill göra?

SELECT fixtures.fixid, gpk_team.teamname as fixteam1, gpk_team2.teamname as fixteam2 FROM fixtures LEFT JOIN gpk_team ON fixtures.fixteam1 = gpk_team.teamid LEFT JOIN gpk_team as gpk_team2 ON fixtures.fixteam2 = gpk_team2.teamid

Trädvy Permalänk
Medlem
Plats
i din garderob
Registrerad
Sep 2007

vill du slå ihop resultatet av fixteam1 och fixteam2 så använder du
SELECT fixteam1+' '+fixteam2 AS teamname

Bilanaloger är som Volvo — varenda svenne kör med dem

Trädvy Permalänk
Medlem
Plats
Västerås
Registrerad
Jun 2005
Citat:

Ursprungligen inskrivet av Teknocide
vill du slå ihop resultatet av fixteam1 och fixteam2 så använder du
SELECT fixteam1+' '+fixteam2 AS teamname

Nu får du förklara hur du tänkte med den där raden ?

Fractal Design Arc Svart | MSI Z68A-GD55 G3 REV B3 | Intel® Core i7 2600K, 3.4GHz, 8MB | Corsair 16GB (4x4096MB) CL9 1600Mhz VENGEANCE LP | MSI GeForce GTX 670 | Phanteks PH-TC14PE CPU Cooler (vit) | Corsair Power Supply 650W TX M, Modular, ATX, PS/2 | SSD (okänd tillverkare) + 2 äldre SATA2 diskar på 750 Gb, 350 gb. | OS: Microsoft Windows 10 home.

Trädvy Permalänk
Medlem
Plats
i din garderob
Registrerad
Sep 2007

Re: mysql problem- join?

Citat:

Ursprungligen inskrivet av Borny
...
men vill att "fixtures.fixteam1" och "fixtures.fixteam2"
ska visas som "gpk_team.teamname" via "gpk_team.teamid.
...

Det var så jag tolkade ovanstående. Var det svårt att förstå?

Bilanaloger är som Volvo — varenda svenne kör med dem

Trädvy Permalänk
Medlem
Plats
Västerås
Registrerad
Jun 2005

Re: Re: mysql problem- join?

Citat:

Ursprungligen inskrivet av Teknocide
Det var så jag tolkade ovanstående. Var det svårt att förstå?

Inte alls.

Däremot förstod jag inte varför du använder +' '+

Vad ska du med "mellanrummet" mellan "pluttarna" till ?

Verkar lite onödigt.

Fractal Design Arc Svart | MSI Z68A-GD55 G3 REV B3 | Intel® Core i7 2600K, 3.4GHz, 8MB | Corsair 16GB (4x4096MB) CL9 1600Mhz VENGEANCE LP | MSI GeForce GTX 670 | Phanteks PH-TC14PE CPU Cooler (vit) | Corsair Power Supply 650W TX M, Modular, ATX, PS/2 | SSD (okänd tillverkare) + 2 äldre SATA2 diskar på 750 Gb, 350 gb. | OS: Microsoft Windows 10 home.

Trädvy Permalänk
Medlem
Plats
London
Registrerad
Jul 2003

nä nu blev det krångligt. Får försöka förklara vada jag vill göra igen (tror dock tecnoside förstod det någorlunda)

Ok har detta i min databas ------fixtures---------------------------- SELECT fixtures.fixteam1, fixtures.fixteam2 FROM `fixtures` WHERE 1 LIMIT 0 , 30 Resultat: fixteam1 fixteam2 2 3 3 2 3 2 2 3 2 3 --------gpk_team------------------------------------------------- SELECT gpk_team.teamid, gpk_team.teamname FROM `gpk_team` Resultat: 1 Team1 2 Team2 3 Team 3 4 Team2 Men vill visa namnet istället för ID så joina 'teamid' med 'fixteam1' och 'fixteam2'. Vill få fram detta resultatet: fixteam1 fixteam2 Team2 Team3 Team3 Team2 Team3 Team2

Hoppas detta "makes more sense"

Ifall någon själ skulle kunna hjälpa mig med detta skulle jag vara uber glad.

AMD OPTERON athlon 3800 x2. DFI LANPARTY nforce 4ULTRA D, 2x1 gig twinmos Chassi Themlake 3,3| GC = Powercoler x850 XT Vivo, Logitech G15, Aiwa surround System, NEC DVD Burner, 1 x 1 x 200 gig 1x500 gigmaxtor SATA 1, 1 x180 gig Western Digital 1x320 western

Trädvy Permalänk
Medlem
Plats
Västerås
Registrerad
Maj 2007

Borny, har du testat det jag skrev ovan? Det ska göra exakt det du vill

Trädvy Permalänk
Medlem
Plats
London
Registrerad
Jul 2003

Tack så jätte mycket. Missupfattade resultatet. Bara ett Teamname kom upp men det berodde pga fixtures inte hade korrekt id nummer.

Tack igen Dynamo.

AMD OPTERON athlon 3800 x2. DFI LANPARTY nforce 4ULTRA D, 2x1 gig twinmos Chassi Themlake 3,3| GC = Powercoler x850 XT Vivo, Logitech G15, Aiwa surround System, NEC DVD Burner, 1 x 1 x 200 gig 1x500 gigmaxtor SATA 1, 1 x180 gig Western Digital 1x320 western