Avatar billede mekaniker Nybegynder
24. juni 2004 - 00:13 Der er 12 kommentarer og
2 løsninger

åbning af fortløbende rapport med "distinct"

Jeg har en fortløbende rapport, som jeg åbner sådan her.

link = "[GRP]= " & " '" & Me![grp] & "'"
DoCmd.OpenReport "produktblad", acPreview, , link

denne rapport er bundet til en tabel, som ser sådan ud:

ID  GRP  DESCRIP

Og den viser så alle poster der tilhøre en bestemt kategori (GRP), men jeg ville gerne lave en distinct kommando på et feltet
DESCRIP

Sådan at vi dette er det samme flere gange, vises kun den første, eller kun 1 post
Avatar billede ferdinand.k Mester
24. juni 2004 - 07:21 #1
Hvis du laver en forespørgesel som baseres på din tabel, og indleder med at sige:
SELECT DISTINCT *,

Dernæst basere du din raport på din forespørgesel, istedet for tabellen...
Avatar billede terry Ekspert
24. juni 2004 - 08:02 #2
DISTINCT means that ALL fields in the output must be the same, and as ID is very likley an autonumber (unique primary key) then it isnt going to work.

Furthermore, I very much doub tthat IF you do find a solution then the sub form will NOT be updatable! Which record are you updating?
Avatar billede mekaniker Nybegynder
24. juni 2004 - 08:03 #3
Det får jeg ikke lov til, den siger at min forespørgsel ikke er gyldig
Avatar billede mekaniker Nybegynder
24. juni 2004 - 08:06 #4
Jeg opdatere ikke, jeg vil kun hive nogle poster ud, men jeg vil gerne udgå at der er nogle som har samme DESCRIP.

Der er ikke id felter som skal være DISTINCT
Avatar billede terry Ekspert
24. juni 2004 - 08:12 #5
So you must only select the fields which you know will result in a DISTINCT output.
For example, drop ID and only select

SELECT DISTINCT GRP, DESCRIP FROM YourTable

but again, IF GRP is unique then it will result in ALL records being in the output!
Avatar billede terry Ekspert
24. juni 2004 - 08:15 #6
The code you use to open the form filters the records which the recordsource to the form shows. So you first need to make a query, or directly in the record source which resulst in ALL GRP being shown. So if you open th eform directly it is NOT filtered. Then when you open th eform using the code it will be filtered by GRP (link)
Avatar billede mekaniker Nybegynder
24. juni 2004 - 08:18 #7
Jubiiiii, så fik jeg klaret den, jeg byggede bare en forspørgsel, som ferdinand.k foreslog, og baserede rapporten på den.

SELECT DISTINCT eksempel.SQDESC, eksempel.SQPGRP, eksempel.SQPRDC, eksempel.SQRPRV
FROM eksempel
ORDER BY eksempel.SQPRDC;
Avatar billede terry Ekspert
24. juni 2004 - 08:22 #8
But there is a BIG difference!
* means ALL fields, which mean ALL fields must be distinct. Now that you specify only the fields you want you have removed ID :o)
Avatar billede mekaniker Nybegynder
24. juni 2004 - 08:27 #9
Tak for hjælpen

>> terry
ja der er stor forskel, men jeg skulle ikke have distinct på alle felterne, kun på descrip, og id felter skal jeg slet ikke bruge, da det kun er en visning.
jeg skal ikke updatere noget..
Avatar billede terry Ekspert
24. juni 2004 - 08:37 #10
DISTINCT does NOT apply to one specific field (descrip) it applies to ALL fields in the result set!
Avatar billede terry Ekspert
24. juni 2004 - 08:37 #11
oh! and thanks :o)
Avatar billede mhq Nybegynder
11. juli 2004 - 12:30 #12
Question to 24-06-2004 08:37:03:
How do I write my SQL to make only one field DESTINCT, and still have several other fields listed in the QUERY result, as shortly mentioned by Terry?
Avatar billede terry Ekspert
11. juli 2004 - 12:58 #13
You cant as far as I know!

As soon as you choose a field in the result set which has more than one value then you will see duplicate records. So the only way around this is to only select fields which you know will result in DISTINCT values.
Avatar billede mhq Nybegynder
11. juli 2004 - 12:59 #14
Thanks!
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