Avatar billede gigi1 Nybegynder
07. april 2015 - 14:52 Der er 2 kommentarer

Udskrive fag som klasse ikke har

Jeg har 3 tabeller - Klasser, Fag, Aktiviteter

Tabel 1
navn: Fag
kolonne 1: Id
kolonne 2: Navn

Tabel 2
navn: Klasser
kolonne 1: Id
kolonne 2: Navn

Tabel 3
navn: Aktiviteter
kolonne 1: Klasseid
kolonne 2: fagid

Hvordan får jeg lavet en liste som viser de fag som en klasse IKKE har?


Hvis det skal se sådan her ud:

-Klasse- -Manglende Fag-

klasse1 fag1
klasse1 fag3
Klasse2 fag2

Det vil sige at klasse1 kun har et fag altså "fag2" derfor bliver den ikke vist.

Klasse2 har "fag1" og "fag3" derfor bliver der vist fag2 som manglede fag.
Avatar billede gigi1 Nybegynder
07. april 2015 - 14:54 #1
Kan jeg lave det med en SQL sætning eller skal der laves array?
Avatar billede Slettet bruger
07. april 2015 - 15:17 #2
Du kan bruge WHERE NOT EXISTS (...)

select k.Navn Klasse, f.Navn
from Klasser k, Fag f
where not exists
(select null from Aktiviteter a
where a.Klasseid = k.Id
  and a.FagId = f.Id
)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester