Avatar billede rasmus1234 Nybegynder
10. november 2006 - 12:51 Der er 8 kommentarer og
1 løsning

hvordan får jeg kun 1. værdi med ud

Jeg har nedenstående forespørgsel:
SELECT MITVEN.IFITNO(varenr), MITVEN.IFSUNO(leverandør)
FROM MITVEN(gældende fra-dato);

Idet der er FLERE leverandører pr. varenr. skal jeg kun have returneret den leverandør, der har det højeste fra-dato.

Kan man det?
Avatar billede rasmus1234 Nybegynder
10. november 2006 - 12:52 #1
Hov, der sneg sig lige en fejl ind:
SELECT MITVEN.IFITNO(varenr.), MITVEN.IFSUNO(lev.nr.), MITVEN.IFRCDT(fra-dato)
FROM MITVEN;
Avatar billede jensen363 Forsker
10. november 2006 - 12:59 #2
SELECT MITVEN.IFITNO, MITVEN.IFSUNO, Last(MITVEN.IFRCDT) AS SidsteOfIFRCDT
FROM MITVEN
GROUP BY MITVEN.IFITNO, MITVEN.IFSUNO;
Avatar billede rasmus1234 Nybegynder
10. november 2006 - 13:12 #3
Af en eller anden årsag fejlede din sql, måske er det fordi både MITVEN.IFSUNO(lev.nr.), MITVEN.IFRCDT(fra-dato) er to forskellige værdier, mens varenummer er entydigt. Giver min beskrivelse mening?
Avatar billede rasmus1234 Nybegynder
10. november 2006 - 13:14 #4
Umiddelbart ser denne ud til at virke:
SELECT MITVEN.IFITNO, Last(MITVEN.IFRCDT) AS SidsteOfIFRCDT, First(MITVEN.IFSUNO) AS FørsteOfIFSUNO
FROM MITVEN
GROUP BY MITVEN.IFITNO
ORDER BY MITVEN.IFITNO, Last(MITVEN.IFRCDT);
Avatar billede jensen363 Forsker
10. november 2006 - 13:20 #5
Det betyder selvfølgelig noget hvordan dine aktuelle data er bygget op, men det var også bare et eksempel på hvorledes du ken benytte first/last til formålet
Avatar billede rasmus1234 Nybegynder
10. november 2006 - 13:32 #6
first/last er et fint værktøj, tak for informationen.
Men desværre løser det ikke mit problem, for dataen er bygget op, så man ikke kan bruge first/last...kun hvis data forinden er sorteret i dato (tror jeg)
Avatar billede rasmus1234 Nybegynder
10. november 2006 - 14:04 #7
Denne mangler så at
SELECT QMITVEN.IFITNO, Max(QMITVEN.IFRCDT) AS MaksOfIFRCDT
FROM QMITVEN
GROUP BY QMITVEN.IFITNO;

Denne give det rigtige resultat, MEN MEN MEN...så mangler jeg til gengæld at kunne koble den tilhørende leverandør på MITVEN.IFSUNO...???
Avatar billede rasmus1234 Nybegynder
10. november 2006 - 14:18 #8
Okay, jeg har snydt lidt, men det virker
SELECT QMITVEN.IFITNO, Max([Qmitven.IFRCDT] & [qmitven.ifsuno]) AS DatoOGlevnr
FROM QMITVEN
GROUP BY QMITVEN.IFITNO;

Efterfølgende bruger jeg en right-funktion.

Jensen363, du får pointene, da du fik mig på sporet af noget brugbart med de grupperinger, tak for hjælpen.
Avatar billede jensen363 Forsker
10. november 2006 - 14:19 #9
Jamen tak for point :o)
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