Avatar billede hjalten5 Nybegynder
02. juni 2003 - 23:26 Der er 5 kommentarer

Alkvantor - NOT EXISTS

Jeg skal finde kunder, som har bestilt SAMTLIGE annoncetyper i 2002.

Har flg. tabeller:
Bestillinger, Annoncer, Annoncetyper, Kunder.

Har bakset følgende sammen:
SELECT K.Tlf
FROM Kunder K
WHERE NOT EXISTS
(SELECT *
FROM Annoncetyper AT
WHERE NOT EXISTS
(SELECT *
  FROM Annoncer A
  WHERE NOT EXISTS
  (SELECT *
  FROM Bestillinger B
  WHERE K.Tlf = B.Tlf
  AND (A.AnnonceNr = B.AnnonceNr
        AND AT.Annoncetype = A.Annoncetype
        AND B.Bestillingsdato = 2002))));

Jeg får ikke det ønskede... Er det fordi jeg skal joine noget således at jeg kun har 2*NOT EXISTS?
Avatar billede thomasll Nybegynder
03. juni 2003 - 09:11 #1
Ja, du skal have sat dine ting sammen, så du kun har 2*not exist, heraf navnet dobbelt negation.

Ud fra det du har skrevet virker følgende måske, men det er tanken bag der tæller, måske skal du selv lige redigere lidt i den

SELECT K.tlf
FROM Kunder K
WHERE NOT EXISTS

(SELECT *
FROM Annoncetype AT
WHERE NOT EXISTS

(SELECT *
FROM Annonce A, bestillinger B
WHERE K.tlf=B.Tlf AND A.AnnonceNr = B.AnnonceNr AND AT.annoncetype=A.annoncetype AND B.bestillingsdato = 2002));

Rod lidt videre med ovenstående og tilpas den hvis den ikke virker

T-Bird
Avatar billede terry Ekspert
03. juni 2003 - 10:31 #2
look at the problem from another perspective. You know how many "Annoncetyper" you have for 2002. and you can find the number each customer has ordered. If they are the same then you have found what you want.
Avatar billede terry Ekspert
03. juni 2003 - 10:31 #3
.
Avatar billede terry Ekspert
03. juni 2003 - 19:18 #4
and?
Avatar billede terry Ekspert
04. juni 2003 - 20:05 #5
This question is obvioulsy not important :o)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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