Tjena!
Ett exempel från databasen, 3 tabeller
tabell 1: Person ( innehåller personens förnamn, efternamn, adress osv osv osv
tabell 2: Kopplar ihop person med bil... så "Person/bil"
tabell 3: Bil (innehåller "namnet" på bilen"
Detta är bara ett exempel för att förtydliga...
Det jag vill göra är att ta reda på vilka bilar en specifik person har
Jag har funderat på
Select
Person.namn, Bil.modell
From Person, Bil, Person/bil
WHERE Person.person.auto_key = Person/bil.person.auto_key
AND person/bil.bil_auto_key = Bil.bil_auto_key
AND Person.namn = 'testgubbe'
Problemet med detta är att jag då bara får ut EN användare och den första av personens bilar...
Jag vill få ut flera rader, en rad för varje bil personen har...
jag har även testat runt med diverse joins... men får ingen stil på det...
förslag på hur detta löses emottages varmt;)
/Niklas
(mySQL är det som gäller)
Sida 1 av 1
SQL-fråga "En person kan äga flera bilar"
#1
Skrivet 18 jun 2012, 14:34
Skrivet 18 jun 2012, 14:34
#2
Skrivet 18 jun 2012, 16:28
Det är JOIN du ska använda, tex.
SELECT * FROM personer
LEFT JOIN koppling ON koppling.persid = personer.persid
LEFT JOIN bilar ON koppling.bilid = bilar.bilid
Du kan variera lite med LEFT/RIGHT beroende på om du vill ha mer personer även utan bilar och bilar utan ägare.
Skrivet 18 jun 2012, 16:28
Det är JOIN du ska använda, tex.
SELECT * FROM personer
LEFT JOIN koppling ON koppling.persid = personer.persid
LEFT JOIN bilar ON koppling.bilid = bilar.bilid
Du kan variera lite med LEFT/RIGHT beroende på om du vill ha mer personer även utan bilar och bilar utan ägare.
SELECT * FROM personer
LEFT JOIN koppling ON koppling.persid = personer.persid
LEFT JOIN bilar ON koppling.bilid = bilar.bilid
Du kan variera lite med LEFT/RIGHT beroende på om du vill ha mer personer även utan bilar och bilar utan ägare.
#3
Skrivet 19 jun 2012, 14:55
Mr Andersson, den 18 jun 2012, 16:28, sa:
Det är JOIN du ska använda, tex.
SELECT * FROM personer
LEFT JOIN koppling ON koppling.persid = personer.persid
LEFT JOIN bilar ON koppling.bilid = bilar.bilid
Du kan variera lite med LEFT/RIGHT beroende på om du vill ha mer personer även utan bilar och bilar utan ägare.
Super!
Tack för hjälpen!
Skrivet 19 jun 2012, 14:55
Mr Andersson, den 18 jun 2012, 16:28, sa:
Det är JOIN du ska använda, tex.
SELECT * FROM personer
LEFT JOIN koppling ON koppling.persid = personer.persid
LEFT JOIN bilar ON koppling.bilid = bilar.bilid
Du kan variera lite med LEFT/RIGHT beroende på om du vill ha mer personer även utan bilar och bilar utan ägare.
SELECT * FROM personer
LEFT JOIN koppling ON koppling.persid = personer.persid
LEFT JOIN bilar ON koppling.bilid = bilar.bilid
Du kan variera lite med LEFT/RIGHT beroende på om du vill ha mer personer även utan bilar och bilar utan ägare.
Super!
Tack för hjälpen!
Sida 1 av 1

Logga in
Bli medlem


Citera flera inlägg