Avatar billede mrfux Nybegynder
08. december 2003 - 11:06 Der er 11 kommentarer og
1 løsning

undgå DISTINCT

Jeg har behov for at lave en query, hvor der bruges et alternativ til distinct. Her er den oprindelige; hvordan undgås distinct?:

SELECT DISTINCT type, nummer
FROM ordre
WHERE enhed='1' and service=' ';
Avatar billede hubs Nybegynder
08. december 2003 - 11:19 #1
Hejsa,
må man spørge hvorfor du vil ha et alternativ til DISTINCT??
Er det du vil ha, at DISTINCT funktionen udføres bare uden at der står DISTINCT eller er jeg helt galt på den :o)
Avatar billede michael_stim Ekspert
08. december 2003 - 11:20 #2
Jeg er ikke rigtigt med. Du skla kun have EN post? I så fald skal du kalde på den post med hjälp af et unikt navn (id eller noget).
Avatar billede mrfux Nybegynder
08. december 2003 - 11:21 #3
DISTINCT 'sløver', samtidig med jeg sidder med en CEDB der ikke lige vil acceptere min DISTINCT.

Så det er præcis det jeg vil have ;)
Avatar billede mrfux Nybegynder
08. december 2003 - 11:23 #4
--> stim

men jeg kan netop ikke kalde med et unikt id (f.eks. type), da jeg så muligvis ikke får et udtræk af alle data
Avatar billede hubs Nybegynder
08. december 2003 - 11:25 #5
Hmmm den var godt nok værere... Det er sku noget der kan sætte gang i de små grå og så oven-i-købet på en mandag "morgen" :o)

Jeg tygger lige på den
Avatar billede hubs Nybegynder
08. december 2003 - 11:48 #6
Hvis det kun er til denne specifikke query kan problemet muligvis løses ved at oprette en ekstra kolonne i din Ordre tabel der indikere om en given type eller nummer har "været der før", fx. noget med at sætte et 'A' ved første gang og et 'B' ved efterfølgende 'kopier'.
Så kunne du bruge den kolonne i din query: SELECT type, nummer FROM ordre WHERE enhed='1' and service=' ' and nykolonne = 'A';

En meget besværlig måde, men det var sådan umiddelbart den bedste lappeløsning jeg lige kunne komme på :o)
Avatar billede mrfux Nybegynder
08. december 2003 - 11:49 #7
hmmm. Det virker sikkert, men sidder selv og ser på om man ikke kan fedte en EXISTS til at erstatte DISTINCT. Problemet er bare at der er i den samme tabel som udtrækket sker fra...
Avatar billede mrfux Nybegynder
08. december 2003 - 11:50 #8
og så er det lidt mere elegant.
Avatar billede hubs Nybegynder
08. december 2003 - 11:53 #9
Ja det ville ski være MEGET mere elegant hvis du kan gøre det på den måde... vil meget gerne høre hva det ender med. Håber det lykkedes.
Avatar billede ugotabe_kidding Nybegynder
08. december 2003 - 11:54 #10
Her er et andet alternativ:

SELECT ordre.nummer, ordre.type
FROM ordre
GROUP BY ordre.nummer, ordre.type, ordre.enhed, ordre.service
HAVING (((ordre.enhed)='840067') AND ((ordre.service)=' '));

Mvh
/U.K.
Avatar billede mrfux Nybegynder
08. december 2003 - 12:07 #11
thanx dumåtagefispåmig

det virker sku
Avatar billede ugotabe_kidding Nybegynder
08. december 2003 - 12:54 #12
Glad to be of service

Takker for pointz...
/U.K.
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