Data uit verschillende tabellen verzamelen

Status
Niet open voor verdere reacties.

SamboNB

Gebruiker
Lid geworden
18 dec 2005
Berichten
38
heb een Acces database met een aantal tabellen.
De tabellen zijn gelijksoortig
Nu wil ik een aantal gegevens verzamelen in een Totaaltabel. Een gegeven is dat ik het aantal unieke records van een tabel wil opslaan in een veld van de totaaltabel, maar syntax:

UPDATE Totaal SET [Unieke Records]= Count(UniekQuerie.[nummers])
WHERE Totaal.[tabelnaam]="tabel1"

geeft foutmelding. "U probeert een query uit te voeren waarbij de opgegeven expressie Uniek Records geen deel uitmaakt van een statistische functie."

Uniekquerie is een querie die een tabel oplevert met unieke nummers

Toch heb ik vroeger soortgelijke dingen gedaan maar ik weet niet meer hoe(Ben er waarschijnlijk te lang uit)

Kan iemand mij weer op weg helpen, Please???
 
Laatst bewerkt:
Vraag verplaatst van SQL/MySQL naar Access.

Ik heb je tweede vraag verwijderd, maar in ruil daarvoor krijg je bij deze een gratis topic-kick ;)
 
Ik vraag me af waarom je gegevens uit bestaande wilt combineren in een andere tabel; in Access leidt dat tot dubbele gegevens, en dat zou je moeten willen vermijden. Alles wat je kunt berekenen (en je maakt een berekening met Count) doe je met queries. Lijkt mij veel logischer...
 
Wat ik wil is dit:
Een tabel bevat een Id, een aantal, een beschrijving en een waarde. Er zijn een groot aantal van die tabellen.
Nu wil ik met een queries of anderzins het totaal aantal, de totale waarde, het aantal unieken tezamen met de tabelnaam in een Totaaltabel opnemen. Elk record in de Totaaltabel vertegenwoordigt dan een van de oorspronkelijke tabellen.
 
Is er een bepaalde reden om zoveel verschillende tabellen met dezelfde soort gegevens te hebben?
 
UPDATE Totaal SET [Unieke Records]= (SELECT Count(*) FROM UniekQuerie.[nummers])
WHERE Totaal.[tabelnaam]="tabel1"

Tardis
 
Bedankt, ik denk dat ik het begrijp maar dan toch weer niet
Krijg de foutmelding dat hij UniekQuerie.mdb niet kan vinden. Kennelijk vind hij dat dat een database moet zijn?
 
De querynaam heb je zelf aangegeven; we nemen toch aan dat je zelf wel weet hoe je queries en tabellen heten.... Dus je hebt geen query [UniekQuery]? Dan is hij inderdaad.... uniek ;)
 
Is er een bepaalde reden om zoveel verschillende tabellen met dezelfde soort gegevens te hebben?

Uiteindelijk worden ze allemaal gecombineerd tot een grote tabel, maar nu nog even niet.
Trouwens het probleem wordt daar niet anders van toch?
 
De querynaam heb je zelf aangegeven; we nemen toch aan dat je zelf wel weet hoe je queries en tabellen heten.... Dus je hebt geen query [UniekQuery]? Dan is hij inderdaad.... uniek ;)

Alles wat je op die positie invult wil hij benaderen als *.mdb en ja ik weet hoe mijn queries en tabellen heten :d
 
Oops foutje gemaakt.
Probeer dit eens

UPDATE Totaal SET [Unieke Records]= (SELECT Count(*) FROM UniekQuerie)
WHERE Totaal.[tabelnaam]="tabel1"

Tardis
 
Dat had ik ook al geprobeerd, nu verschijnt er een popup parameter waarde ogeven 'Uniek Records' zonder quotes
 
Zou zomaar een parameter in je query UniekQuerie kunnen zijn.
Zonder voorbeeldbestand is het koffiedik kijken.

Tardis
 
Dat had ik ook al geprobeerd, nu verschijnt er een popup parameter waarde opgeven 'Uniek Records' zonder quotes

Nee dat is het veld in de totaaltabel, Puzzel morgen weer verder, moet nu weg.
Mag ik je dan nogeens benaderen?:confused:
 
Oops foutje gemaakt.
Probeer dit eens

UPDATE Totaal SET [Unieke Records]= (SELECT Count(*) FROM UniekQuerie)
WHERE Totaal.[tabelnaam]="tabel1"

Tardis

Ook ik maakte een foutje, hoe vaak kun je over een type-fout heen kijken voor je hem ziet. Op naar de volgende foutmelding

"De bewerking moet worden uitgevoerd op een query die kan worden bijgewerkt"

Als ik een vaste waarde wil invoeren gaat het goed en ook SELECT Count(*) FROM UniekQuerie geeft een resultaat. Maar in combinatie krijg ik foutmelding.
 
Je kunt een bijwerkquery niet uitvoeren op basis van een query die dynamische gegevens berekent, en dat doe je met de Count query. Maak er een tabel van, en je update query werkt wel.
 
Zo lukt het wel

UPDATE Totaal SET [Unieke Records]= DCount("*","UniekQuerie")
WHERE Totaal.[tabelnaam]="tabel1"

Kan zijn dat je de komma door een puntkomma moet vervagen.

Tardis
 
Je kunt een bijwerkquery niet uitvoeren op basis van een query die dynamische gegevens berekent, en dat doe je met de Count query. Maak er een tabel van, en je update query werkt wel.

Als ik een tabel neem werkt het ook niet helaas. De oplossing van Tardis werkt wel.
Nu nog proberen te begrijpen waarom. Ligt het aan mij of zijn die verklarende teksten van Microsoft zo onduidelijk.

In ieder geval fijne Feestdagen en nogmaals bedankt voor de hulp:thumb:
 
Zo lukt het wel

UPDATE Totaal SET [Unieke Records]= DCount("*","UniekQuerie")
WHERE Totaal.[tabelnaam]="tabel1"

Kan zijn dat je de komma door een puntkomma moet vervagen.

Tardis

Geweldig, enorm bedankt. Ga nu proberen te begrijpen waarom het werkt. :rolleyes:

Fijne feestdagen :thumb:
 
DCount is een functie, en geen query. Daarom kun je die opdracht wel gebruiken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan