Avatar billede trp79 Nybegynder
16. september 2004 - 11:04 Der er 6 kommentarer og
1 løsning

Hjælp til forespørgsel, der kan afvikles i MySQL 4.0

Hejsa
Jeg kan ikke lige finde ud af hvordan jeg laver en forespørgsel, der finder ud af, hvilke afdelinger der INGEN ansatte har.

Jeg har lavet disse to tabeller:
CREATE TABLE EMP (  ename VARCHAR(50) NOT NULL, salary INTEGER, deptnr INTEGER, PRIMARY KEY(ename));

CREATE TABLE DEPT (  deptnr INTEGER NOT NULL, deptname VARCHAR(50), PRIMARY KEY(deptnr));

Håber nogen kan komme med lidt input :)
På forhånd tak, mvh
Torben
Avatar billede arne_v Ekspert
16. september 2004 - 11:10 #1
Prøv:

SELECT DEPT.deptname FROM DEPT LEFT JOIN EMP ON DEPT.deptnr=EMP.deptnr WHERE EMP.deptnr IS NULL
Avatar billede trp79 Nybegynder
16. september 2004 - 13:22 #2
Det virker som det skal Arne :)
Kan jeg få dig til at forklare hvad der sker?
Avatar billede arne_v Ekspert
16. september 2004 - 13:35 #3
Ja du laver en LEFT JOIN d.v.s. at DEPT rækker ommer ed selvom der ikke
er nogen EMP rækker som matcher.

Dem der ikke har nogen matchende EMP række NULL i EMP.*.

Den der ikk ehar nogen matchende EMP række er de afdelinger uden ansatte.
Avatar billede arne_v Ekspert
16. september 2004 - 13:35 #4
og et svar
Avatar billede trp79 Nybegynder
16. september 2004 - 14:58 #5
Det er super arne, jeg takker for hjælpen.

Kan lige oplyse andre om, at jeg fik resoneret mig frem til, at der står "...d.v.s. at DEPT rækker kommer med selvom der ikke..."

Mvh
Torben
Avatar billede arne_v Ekspert
16. september 2004 - 15:19 #6
Ja - der smuttede vist et par bogstaver - sorry
Avatar billede trp79 Nybegynder
16. september 2004 - 15:21 #7
Ja sådan kan det jo gå :) Vi fandt jo ud af det, så det er jo glimrende.
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
Kategori
Computerworld tilbyder specialiserede kurser i database-management

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