INNER JOIN
Jeg har forsøgt besvare dette spørgsmål med en UNION, men det kan ikke lade sig gøre. Jeg har hørt, det kan lade sig gøre med en INNER JOIN. Er der nogen der kan hjælpe.Spørgsmål:
Indtast Kundeid. Som output ønskes de faste oplysninger om forretningsforbindelsen, samt en oversigt over de policer kunden er relateret til.
Oversigten over policer skal primært være sorteret efter Rolleid og sekundært efter Policetype.
Bemærk at forretningsforbindelser uden FF-relationer skal udskrives med de faste oplysninger.
SELECT policetype, kundetitel, kundenavn, branche, forsikringsrådgiverid, Roller.rolleid
FROM Forretningsforbindelser, Forsikringsaftaler, FFrelationer, Roller
WHERE FFrelationer.rolleid = roller.rolleid
AND FFrelationer.policeid = Forsikringsaftaler.policeid
AND FFrelationer.kundeid = Forretningsforbindelser.kundeid
ORDER BY Roller.rolleid, policetype;
Program 2 del 2, hvor union ikke virker da der er 5 kolonner iden øverste og 3 i den nederste
(
SELECT policetype, kundetitel, kundenavn, branche, forsikringsrådgiverid, Roller.rolleid
FROM Forretningsforbindelser, Forsikringsaftaler, FFrelationer, Roller
WHERE FFrelationer.rolleid = roller.rolleid
AND FFrelationer.policeid = Forsikringsaftaler.policeid
AND FFrelationer.kundeid = Forretningsforbindelser.kundeid
)
UNION
(
SELECT kundetitel, kundenavn, branche, forsikringsrådgiverid
FROM Forretningsforbindelser
WHERE Forretningsforbindelser.kundeid NOT IN (SELECT kundeid FROM FFrelationer)
)
ORDER BY Roller.rolleid, policetype
