TTravoniMedlem sedan okt. 20041 556 inlägg Frågan#1 SELECT a.txt, b.cat
FROM tbl_b b,tbl_a a
WHERE b.id=1 AND a.id=1 AND a.uid=32
ORDER BY b.cat
Detta hämtar ju två fält, men problemet är att om b.cat inte finns så visas inte a.txt.
Jag skulle vilja att även a.txt visades oavsätt om b.cat finns eller ej. Hur gör jag då?
MMeleaMedlem sedan juli 20033 147 inlägg Har du någon relation mellan tabellerna? Något id som sammanbinder dem?
TTravoniMedlem sedan okt. 20041 556 inlägg Jag skrev fel. Det skall se ut så här:
SELECT a.txt, b.cat
FROM tbl_b b,tbl_a a
WHERE a.id=b.id AND a.uid=32
ORDER BY b.cat
cyprysMedlem sedan dec. 20003 563 inläggGör en left join.
SELECT a.txt, b.cat
FROM tbl_a a left join tbl_b b on a.id = b.id
WHERE a.uid=32
ORDER BY b.cat
MMeleaMedlem sedan juli 20033 147 inlägg select
a.txt,
b.cat
from
tbl_a a
left join
tbl_b b on a.id = b.id
where
a.uid = 32
order by
b.cat
Borde göra susen. :)
/r Redigerar eftersom jag joinat tabellerna "åt fel håll". :)
LLarsGMedlem sedan dec. 200012 464 inlägg SELECT a.txt, b.cat
FROM tbl_a a left join tbl_b b
on a.id = b.id
where a.uid=32
ORDER BY b.cat
TTravoniMedlem sedan okt. 20041 556 inlägg Tack, nu har jag att välja ibland... :e
cyprysMedlem sedan dec. 20003 563 inlägg*Tycker faktiskt Meleas indentering är snyggast* ;)
MMeleaMedlem sedan juli 20033 147 inlägg Haha, snacka om törstiga på att hjälpa till. ;)
TTravoniMedlem sedan okt. 20041 556 inlägg Resultatet blir tyvärr det samma.
Det är bara om b.cat innehåller något som a.txt visas.
Har även testat LarsG's variant. (växlat tablellerna)
cyprysMedlem sedan dec. 20003 563 inläggoops
SELECT a.txt, b.cat
FROM tbl_a a left [b]outer[/b] join tbl_b b on a.id = b.id
WHERE a.uid=32
ORDER BY b.cat
TTravoniMedlem sedan okt. 20041 556 inlägg Nä, det blir ingen skillnad
LLarsGMedlem sedan dec. 200012 464 inlägg Vad menar du med växla tabellerna? Om du bytte plats på dom i join-klausulen så låt bli det.
TTravoniMedlem sedan okt. 20041 556 inlägg Ja, men du skriver:FROM tbl_a a left join tbl_b b
och melea skriver: FROM tbl_b b left join tbl_a a
cyprysMedlem sedan dec. 20003 563 inläggOch jag skriver FROM tbl_a a left join tbl_b b.
2 mot 1 vilket gör att vi automatiskt har rätt. ;)
Skillnaden är att det ena fungerar och det andra inte.
Säker på att min senaste verkligen inte stämmer?
MMeleaMedlem sedan juli 20033 147 inlägg *Har nu redigerat mitt inlägg* :r
TTravoniMedlem sedan okt. 20041 556 inlägg Det funkar nu. Jag hade skrivit ...WHERE b.id=32...