standaard access - dubbele records in query

Status
Niet open voor verdere reacties.

Theo65

Gebruiker
Lid geworden
20 mrt 2023
Berichten
55
Vraag... standaar access, maar ik zie het even niet.

Ik heb een tabel en een query, welke ik via nummer koppel. Beide velden zijn nummeriek.
Bij de join eigenschappen kies ik voor alles in tabel en alleen de records in de query.

De uitvoer geeft echter dubbele records als het record in de query voorkomt, terwijl ik alleen een paar velden uit die query will toevoegen.
Waarom krijg ik die dubbele records, wat doe ik fout???? Ik zie het zelf even niet.
Misschien kunnen jullie me op weg helpen
 

Bijlagen

  • access schermafbeelding.jpg
    access schermafbeelding.jpg
    123,3 KB · Weergaven: 24
Zoals je kunt zien in de tweede tabel, is het veld [PN] daar niet uniek (zeker geen sleutelveld). Dat betekent dus dat het sowieso mogelijk is dat er dubbelingen op basis van pn bestaan. En hoewel je koppelt met een tabel waarin [Persoonsnummer] uniek is, krijg je dan dus tóch dubbele records te zien. Het lijkt mij handiger om eerst de tweede tabel te ontdubbelen, of de gegevens daarvan samen te voegen. Ik weet niet wat je bedoeling is van het geheel. Je kunt overigens in de eigenschappen van de query wel aangeven of je unieke waarden, of unieke records wilt zien. Daar kun je nog even mee stoeien. Andere optie: zet de knop Totalen aan, dan krijg je per groep identieke velden één record te zien. Neemt niet weg dat je dubbelingen natuurlijk nog steeds bestaan in de tweede tabel.
Laatste truc: zet in de SQL van de query het woord DISTINCT achter SELECT. Dan kom je ook een heel eind.
Bij de join eigenschappen kies ik voor alles in tabel en alleen de records in de query.
Overigens klopt deze opmerking niet :).
 
Dan zullen er voor die personen twee records in de tabel ADRFK_BP_extra aanwezig zijn.

De join-eigenschap die je hebt gekozen zorgt ervoor dat ook personen getoond worden die niet aan een ADRFK_BP_extra record gekoppeld zijn.

Zonder het doel van de query te kennen kan ik geen oplossing bieden.
 
Als het niet kan zoals het moet, dan moet het maar zoals het kan. Doe het wel wat anders en met "zet in de SQL van de query het woord DISTINCT achter SELECT." kom ik inderdaad een stuk verder
 
De vraag blijft wat je nu echt wilt en waarom je de tweede tabel koppelt.
 
De vraag blijft wat je nu echt wilt en waarom je de tweede tabel koppelt.


De tabel is een gegeven, dit is een export van een ander. Ik heb extra tabellen met queries. Ik wilde een paar velden uit de query halen en toevoegen aan de tabel.
De dubbele regels die je in afbeelding zag hadden geen dubbele records met dat nummer, dus dat verklaart de dubbele regels niet.
 
De dubbele regels die je in afbeelding zag hadden geen dubbele records met dat nummer, dus dat verklaart de dubbele regels niet.
Het kan volgens mij niet anders dan dat er in ADRFK_BP_extra dubbele nummers voorkomen.
Het zou helpen als je een kopie van je database (zonder namen) hier postte.

Ik snap overigens niet waarom je gegevens over zou willen nemen als ze al ergens aanwezig zijn.
 
Ik snap overigens niet waarom je gegevens over zou willen nemen als ze al ergens aanwezig zijn.
Dan ben je nooit database beheerder geweest :). Je krijgt af en toe inderdaad wel eens data uit andere systemen die je dan moet invoegen in je eigen database. En daar lijkt het bij TS op.

Ik zou TS in ieder geval aanraden om op de tabel [ADRKF_Extra] de wizard Dubbele records te draaien, zodat er luid en duidelijk uitkomt dat er inderdaad dubbele records in zitten. Of op zijn minst een totalen query maken op die tabel waarbij je op het veld NR een telling doet. Je zet dat veld dan één keer in de query met Group By, en één keer met de functie Aantal, en je filtert dan op >1. Dan rollen de dubbelen er vanzelf uit. Die lijst kan je dan gebruiken om de dubbele records eerst met elkaar te vergelijken, want áls ze er dubbel in staan, wilt dat niet zeggen dat a) die records volkomen gelijk zijn, en ook niet dat meteen duidelijk is wélke van de dubbele records dan de juiste gegevens bevatten, bij afwijkingen.
En dat geldt dan natuurlijk óók voor je hoofd tabel: de informatie die daarin staat wil je natuurlijk níet overschrijven als die correct is, en de tabel Extra dus verouderde informatie bevat. Ik zou in ieder geval nooi zomaar de gegevens in je hoofdtabel overschrijven. Aanvullen op basis van lege velden, kan natuurlijk altijd.

Ik ben overigens benieuwd of je het verzoek van Peter kan invullen zonder in conflict te geraken met de AVG :).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan