BrimbaMedlem sedan dec. 19995 875 inlägg Hej
Jag vill ha flera innejoin, gör man så här då?
INNER JOIN tabArt, tabTillverkare ON (tabUnderKat.UnderKatID = tabArt.UnderKatID), (tabArt.TillverkareID = tabTillverkare.TillverkareID)
Eller hur gör man?
Tack!
------------------
Mvh
Patrik
aka Brimba
www.datormaklarna.se
patrik@datormaklarna.se
BrimbaMedlem sedan dec. 19995 875 inlägg eller man kanske rent av gör såhär?
INNER JOIN (tabArt INNER JOIN tabTillverkare ON tabArt.TillverkareID = tabTillverkare.TillverkareID) ON tabUnderKat.UnderKatID = tabArt.UnderKatID
eller?
eller såhär:
INNER JOIN tabArt (INNER JOIN tabTillverkare ON tabArt.TillverkareID = tabTillverkare.TillverkareID) ON tabUnderKat.UnderKatID = tabArt.UnderKatID
eller?
------------------
Mvh
Patrik
aka Brimba
www.datormaklarna.se
patrik@datormaklarna.se
BrimbaMedlem sedan dec. 19995 875 inlägg erased, because it maybe were a bit more teasing than Swaey, could handle :q
[Redigerat av Brimba den 21 jun 2000]
fredrikMedlem sedan dec. 19991 072 inlägg Nej, så här kan du göra:
Om vi säger att jag har 3 tabeller. En med produkter och produkt ID, en med färg_id och produkt_id och en med färg och färg_id.
Produkt|produkt_id
cykel | 3
bil | 4
-----------------
color_id|produkt_id
1 | 3
2 | 4
-----------------
color|color_id
röd | 1
blå | 2
Om du då ska hämta färgnamnen baserat på produktens id skriver du:
SELECT color_id.color FROM produkt INNER JOIN color ON produkt.produkt_id color.produkt_id INNER JOIN color_id ON color.color_id = color_id.color_id WHERE (produkt.produkt_id = 4)
Detta skulle alltså ge dig färgen blå i detta fallet.
Och på samma sätt skriver du flera innerjoins efter varandra.
Hoppas det funkar!
------------------
Fredrik Klarqvist
fredrik.klarqvist@swipnet.se
www.streetwise.se/fredrik/
[Redigerat av fredrik den 21 jun 2000]
BrimbaMedlem sedan dec. 19995 875 inlägg Aha, det är bara å skriva flera stycken efter varann, det verkar lite onödigt tycker jag, men tack!
------------------
Mvh
Patrik
aka Brimba
www.datormaklarna.se
patrik@datormaklarna.se
BrimbaMedlem sedan dec. 19995 875 inlägg Är du verkligen säker på din sak nu?
Jag provade din variant, fungerar inte. Sen provade jag min variant (nummer 2)
INNER JOIN (tabArt INNER JOIN tabTillverkare ON tabArt.TillverkareID = tabTillverkare.TillverkareID) ON tabUnderKat.UnderKatID = tabArt.UnderKatID
Det fungerade perfekt.
Kan man verkligen skriva så som du skrev?
Tack!
------------------
Mvh
Patrik
aka Brimba
www.datormaklarna.se
patrik@datormaklarna.se
fredrikMedlem sedan dec. 19991 072 inlägg Japp, det funkar perfekt!
Testkörde det nämligen innan jag publicerade det...
Har en liknande databas själv nämligen där jag använder den koden.
Kolla igen att du döpt tabellerna rätt så ska det funka.
------------------
Fredrik Klarqvist
fredrik.klarqvist@swipnet.se
www.streetwise.se/fredrik/
fredrikMedlem sedan dec. 19991 072 inlägg Vid närmare titt ser jag nu att jag missade ett "="-tecken i den först innerjoinen.
Den riktiga koden ska vara:
SELECT color_id.color FROM produkt INNER JOIN color ON produkt.produkt_id = color.produkt_id INNER JOIN color_id ON color.color_id = color_id.color_id WHERE (produkt.produkt_id = 4)
Skumt för likamedtecknet försvann nu med när jag skulle klistra in...
jaja, men nu funkar det iaf.
------------------
Fredrik Klarqvist
fredrik.klarqvist@swipnet.se
www.streetwise.se/fredrik/
BrimbaMedlem sedan dec. 19995 875 inlägg Det är egentligen strunt samma, min kod fungerar fint, så jag kör med den. Är den egentligen felaktig?
------------------
Mvh
Patrik
aka Brimba
www.datormaklarna.se
patrik@datormaklarna.se
fredrikMedlem sedan dec. 19991 072 inlägg Nejdå, den är inte felaktigt, den funkar med.
------------------
Fredrik Klarqvist
fredrik.klarqvist@swipnet.se
www.streetwise.se/fredrik/