Jag har en SQl-sats som inte vill fungera som jag har tänkt mig...
Jag har tre tabeller
tblSida
sidId
sidNamn
avdId
tblAvdelning
avdId
avdLangtNamn
tblRattighet
avdId
persId
rattighetId
Jag vill alltså hämta sidId, sidNamn, avdLangtNamn för de avdId där personen e 'XX' och rattighetId e '2'.
Min fråga ser ut så här
SELECT s.sidId, s.sidNamn, a.avdLangtNamn, r.avdId
FROM tblRattighet r INNER JOIN tblSida s ON r.avdId = s.avdId
INNER JOIN tblAvdelning a ON s.avdId = a.avdId WHERE r.persId ='XX' AND r.rattighetId = '2'
Problemet e att jag har en avdelning som inte har någe avdLangtNamn men jag vill ju ha med dessa sidor i resultatet iaf (men fältet avdLangtNamn blir då tomt), dessa kommer alltså inte med såsom frågan ser ut nu.
SELECT s.sidId, s.sidNamn, a.avdLangtNamn, r.avdId
FROM tblRattighet r INNER JOIN tblSida s ON r.avdId = s.avdId
LEFT OUTER JOIN tblAvdelning a ON s.avdId = a.avdId WHERE r.persId ='XX' AND r.rattighetId = '2'
Då får du null i a.avdLangtNamn där det inte finns någon match.