[Access] Query probleem unieke records

Pagina: 1
Acties:

  • Dutch_guy
  • Registratie: September 2001
  • Laatst online: 24-07 13:40
Hieronder een stukje uit mijn database:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
AutoKey Ordernummer_F   Cd_ID_F
1           1                       1
2           2                       4
3           3                       1
4           4                       3
5           5                       2
6           5                      11
7           6                       2
8           7                       3
9           7                      11
10          8                       5
11          9                       2
12         10                       1
13         11                       5
14         12                       1
15         13                       2
16         14                       1
17         15                       1
18         16                       1
19         17                      11


Nu wil ik een query maken, die alle records toont, waarbij Cd_ID_F = 11 en maar 1 Ordernummer_F heeft.

Dus in bovenstaand voorbeeld moet dus alleen Autokey record 19 worden weergegeven.

Ik dacht dit op te lossen met Select Distinct op Ordernummer_F en filter op Cd_ID_F=11, maar dat werkt dus niet. Ik krijg dan toch alles te zien.

Kan iemand mij in de goede richting sturen ?

Pay peanuts get monkeys !


  • raoulduke
  • Registratie: Oktober 2003
  • Niet online

raoulduke

Get in!

Kijk naar het keyword HAVING in combinatie met een (DISTINCT) COUNT.

Remember, if you have any trouble you can always send a telegram to the Right People.


  • Dutch_guy
  • Registratie: September 2001
  • Laatst online: 24-07 13:40
Volgens www.w3schools.com werkt (DISTINCT) COUNT niet bij een Access database. Nog andere mogelijkheden ?

Pay peanuts get monkeys !


  • jwpmzijl
  • Registratie: December 2002
  • Laatst online: 21-06 09:07
SELECT Autokey, Count(Autokey) AS AantalRegels
FROM JouwTabelNaam
GROUP BY Ordernummer_F
HAVING (((Count(Autokey))=1));

Hans van Zijl


Verwijderd

code:
1
2
3
4
5
6
7
8
9
10
SELECT *
FROM tabel t1
where cd_id_f = 11
and not exists 
(select  ordernr_f
from tabel t2
where t1.ordernr_f = t2.ordernr_f
GROUP BY ordernr_f
HAVING COUNT (ordernr_f) > 1
);


Deze werkt...kopieren en plakken maar