elvelindMedlem sedan juli 2002167 inlägg har två tabeller. dels fordon och dels parker.
fordon ser ut : fordonsnamn | företagsid | parknamn
parker: parknamn | företagsid | ort
parker.parknamn kan vara dubbletter och parker.företagsid likaså. dock är de två tillsammans unika. dvs. varje företagsid kan inte ha mer än ett likadant parknamn
det jag vill göra just nu är att söka fram ett fordon med som ligger på en viss ort.
säg till om ni behöver mer förklaringar.
LarsGMedlem sedan dec. 200012 464 inlägg select fordon.* from fordon inner join parker
on (fordon.företagsid = parker.företagsid
and fordon.parknamn = parker.parknamn)
where ort = 'Ystad'
elvelindMedlem sedan juli 2002167 inlägg försökte något liknande först.. men det blev problem när jag skulle ha flera where satser.
vill att den dessutom ska söka efter where fordon.namn='namn' AND where fordon.id='id' alla where kraven måste uppfyllas. kanske bara jag som flummar och inte får det rätt.
LarsGMedlem sedan dec. 200012 464 inlägg select fordon.* from fordon inner join parker
on (fordon.företagsid = parker.företagsid
and fordon.parknamn = parker.parknamn)
where ort = 'Ystad'
and fordonsnamn = 'pluttan'
t.ex.
(Vilka kolumnnamn är det som gäller?)
elvelindMedlem sedan juli 2002167 inlägg sql ="SELECT fordon.namn, fordon.park, fordon.Regnr, fordon.biltyp, fordon.id, fordon.raknare, park.id, park.namn, park.lan FROM fordon INNER JOIN park ON (fordon.id = park.id and fordon.park = park.namn) WHERE (fordon.namn LIKE "& na & ") AND (fordon.Regnr LIKE "& re & ") AND (fordon.biltyp LIKE "& fo1 & " OR fordon.biltyp LIKE "& fo2 & " OR fordon.biltyp LIKE "& fo3 & " ) ORDER BY '"& Request.form("sortera") &"'"& Request.form("ordning") &" "
fungerar ej.. den vill inte välja ut några poster alls.. däremot om man tar bort join delen så väljs alla så som det ska
LarsGMedlem sedan dec. 200012 464 inlägg Varför har du
ON (fordon.id = park.id and fordon.park = park.namn)
borde det inte räcka med
ON (fordon.park = park.namn)
Ett annat fel är att du har ' kring värdet i order by
Bör vara
ORDER BY " & Request.form("sortera") & " " & Request.form("ordning")
Varför använder du like och inte =?
elvelindMedlem sedan juli 2002167 inlägg
LarsG skrev:
Varför har du
ON (fordon.id = park.id and fordon.park = park.namn)
borde det inte räcka med
ON (fordon.park = park.namn)
därför att det kan finnas två parker med samma namn. dock kan bara varje företag (id) ha en park med ett namn
__________
Ett annat fel är att du har ' kring värdet i order by
Bör vara
ORDER BY " & Request.form("sortera") & " " & Request.form("ordning")
slarvfel av mig
__________________________
Varför använder du like och inte =?
för att man i sökningen ska kunna skriva %lars%
LarsGMedlem sedan dec. 200012 464 inlägg Ok, men det är din on-klausul som ställer till det.
Exakt hur är tabellerna definierade och hur ser relationen mellan dom ut? (Du nämner fordon.företagsid men du använder fordon.id så jag känner mig lite förvirrad.)
elvelindMedlem sedan juli 2002167 inlägg fordon.id och parker.id innehåller båda företagets id..
tabellerna har inga relation mellan varandra (mysql stöder inte vad jag vet .. eller? )