Har två tabeller: avdelning och anställd. <code> Är det inte lättare att skriva:Join med "extra" post
select avdelning.namn, anställd.anstnr
from
avdelning
full outer join
anställd
on avdelning.id=anställd.avdid
Ger t.ex:
Inköp, 123456
Inköp, 456465
Marknad, null
Försäljning, 456588
Grejen är den att jag vill ha en "extra" post för de avdelningar som har anställda.
Så här:
Inköp, null
Inköp, 123456
Inköp, 456465
Marknad, null
Försäljning, null
Försäljning, 456588
Är det möjligt?Sv: Join med "extra" post
select avdelning.namn, anställd.anstnr
from
avdelning
left outer join
anställd
on avdelning.id=anställd.avdid
union all
select avdelnig.namn, cast(null as int)
from avdelning
where exists (select * from anställd
where avdelning.id=anställd.avdid)
order by avdelning.namn
</code>Sv: Join med "extra" post
<code>
SELECT avdelning.namn, anställd.anstnr
FROM avdelning INNER JOIN anställd ON avdelning.id = anställd.avdid
UNION ALL
SELECT avdelnig.namn, cast(null as int) as anstnr
FROM avdelning
ORDER BY namn, anstnr
</code>