Avatar billede mim007 Nybegynder
19. januar 2005 - 15:10 Der er 5 kommentarer og
1 løsning

fjerne dubletter

Jeg kan sgu ikke helt knække disse data om ventetider til operationer.
Der er mange dubletter i mine data. Dem fjerner jeg ved at lave en tiføjelsesforespørgsel i access og lave en nøgle for dato, sygehus, sygdom og de opgivne ventetider. Hvis alt det er ens, så er der jo tale om en unik id. Så vidt så godt. Herefter kan jeg se, at der i data er omkring 600 poster, hvor dato, sygehus og lidelse er ens, men der er opgivet forskellige ventetider. Sundhedsstyrelsen, som nu holder styr på data, siger, at så skal jeg tage den post, der sidst er indtastet. Det fremgår bare ikke nogen steder. Så siger de, at det kan man se ud fra den rækkefølge de står i rådata. Den øverste værdi er den nyeste. Så vidt så godt. Her laver jeg indledningsvis en unik id for hver post, og så er det jo i princippet den post med den laveste værdi, der er den nyeste. Men ID-feltet ryger jo, når jeg gruppere på data!!!!
Avatar billede mugs Novice
19. januar 2005 - 15:27 #1
Ja - Det nytter ikke noget at gruppere på et unik nøgle. Men hvad er egentlig dirt problem?
Avatar billede mim007 Nybegynder
19. januar 2005 - 15:34 #2
jeg får eks flere poster ud fra samme dato. men jeg skal kun have den, hvor id værdien er lavest.
Avatar billede terry Ekspert
23. januar 2005 - 10:21 #3
if you still need help here then I can maybe take a look at your data and make some suggestions.
eksperten@NOSPAMsanthell.dk
remove NOSPAM
Avatar billede terry Ekspert
24. januar 2005 - 15:14 #4
status?
Avatar billede terry Ekspert
26. januar 2005 - 08:49 #5
OK, this is the solution mim007 received by mail

a query to find the correct records (Nr field is primary key)

SELECT M.behandling, M.hospital, M.aar, M.maaned, (SELECT TOP 1 NR FROM Michael WHERE Michael.behandling = M.Behandling and Michael.hospital = M.hospital and Michael.aar = M.aar AND Michael.maaned = M.maaned  Order BY Michael.nr ASC) AS Nr, Count(*) AS cnt
FROM michael AS M
GROUP BY M.behandling, M.hospital, M.aar, M.maaned;

then an append query which uses Nr found from the first query find the releated record in the original table and append it to the new table
INSERT INTO tblNewData ( nr, behandling, hospital, vtidf, vtidb, ambub, straal, kemo, adgang, opdateret, maaned, aar )
SELECT michael.nr, michael.behandling, michael.hospital, michael.vtidf, michael.vtidb, michael.ambub, michael.straal, michael.kemo, michael.adgang, michael.opdateret, michael.maaned, michael.aar
FROM michael INNER JOIN qryUniqueNr ON michael.nr = qryUniqueNr.Nr;
Avatar billede terry Ekspert
26. januar 2005 - 13:04 #6
thanks mim007

/terry
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