PercyMedlem sedan mars 2000187 inlägg Hej!
Har 4 st tabeller:
Person
Tillfälle
Vaccin
koppling mellan vaccin och tillfälle
det jag vill att sql-frågan skall göra är att lista alla personer oavsett om de blivit vaccinerade eller ej, och även visa de vaccinationer som de personer som har vaccinerats har fått.
Som det är nu visas samtliga personer oberoende av om de är vaccinerade eller ej, men felet är att den gör exakt lika många poster till alla personer oberoende av vad de egentligen har vaccinerats för (detta gäller även de personer som ej är vaccinerade).
så förekommer det ex. 4 st olika typer av vaccinationer så har alla personerna 4 st poster.
Känns som om jag har fel typ av join. är det någon som kan lösa detta?
SELECT Users.UserId, Users.UserSurname, Users.UserLastname, Users.PersonNumber, Occasion.VaccineDate, Occasion.Comment, Vaccine.VaccineName, Signature.SignatureName
FROM Users
LEFT JOIN Company ON Company.CompanyId = Users.CompanyId
LEFT JOIN Occasion ON Occasion.UserId = Users.UserId
LEFT JOIN OccasionVaccine ON OccasionVaccine.OccasionId = OccasionVaccine.OccasionId
LEFT JOIN Vaccine ON Vaccine.VaccineId = OccasionVaccine.VaccineId
LEFT JOIN Signature ON Signature.SignatureId = Occasion.SignatureId
WHERE Users.CompanyId = 1
tack på förhand
PercyMedlem sedan mars 2000187 inlägg Har du ngt lösningsförslag LarsG, skall man använda sig av outer join?
LarsGMedlem sedan dec. 200012 464 inlägg SELECT Users.UserId, Users.UserSurname, Users.UserLastname, Users.PersonNumber, Occasion.VaccineDate, Occasion.Comment, Vaccine.VaccineName, Signature.SignatureName
FROM Users
LEFT JOIN Company ON Company.CompanyId = Users.CompanyId
LEFT JOIN Occasion ON Occasion.UserId = Users.UserId
LEFT JOIN OccasionVaccine ON [b]Occasion[/b].OccasionId = OccasionVaccine.OccasionId
LEFT JOIN Vaccine ON Vaccine.VaccineId = OccasionVaccine.VaccineId
LEFT JOIN Signature ON Signature.SignatureId = Occasion.SignatureId
WHERE Users.CompanyId = 1
Du hade samma tabell på båda sidorna i villkoret.
PercyMedlem sedan mars 2000187 inlägg vad menar du med en subselect? alltså två helt sep. frågor?
jag väntar med spänning :-)
PercyMedlem sedan mars 2000187 inlägg tack LarsG, du är en hjälte!
PercyMedlem sedan mars 2000187 inlägg LarsG, har en följdfråga, handlar mer om asp, du kanske kan flytta tråden?
Undrar hur man får reslutatet av frågan att visas enligt följande mall:
Namn VaccinA VaccinB VaccinC Datum Sign
Pierre x x 2002-10-10 AF
x 2002-11-02 SD
Johan x 2002-06-20 AF
osv.....
vill alltså att alla vaccinationer som har samma datum representeras av en rad, dvs ett vaccinationstillfälle, och resp. vaccin som man fått med ett kryss. Personens namn skall endast synas en gång oberoende av antalet vaccinationstillfällen.