AI bliver først for alvor en del af arbejdet, når teknologien integreres i den måde, vi arbejder på. At have adgang til AI betyder ikke nødvendigvis, at medarbejderne er klar til at bruge den.
SELECT First(pejling) AS Første, Last(pejling) AS Ofpejling FROM Tabel1 GROUP BY Pejling WHERE dato Between #2002/01/01# And #2002/02/01# Order By Dato;
SELECT First(pejling) AS Første, Last(pejling) AS Ofpejling FROM Tabel1 GROUP BY Pejling HAVING dato Between #2002/01/01# And #2002/02/01# Order By Dato;
(hvorfor bruger du ikke forespørgselsgeneratoren? Så får du jo det hel forærende? Jeg er sgu selv blevet lidt rusten til det her - det andet er jo så nemt)
Det gør jeg også - Men den er lidt svær at vise herinde ;)
Når jeg trækker 'dato' for at sortere stigende får jeg enten alle poster - eller fejlmelding.
problemmet er at jeg ikke vil gruppere på noget felt - og det hjælper ikke at lave en Q_Sort: SELECT Tabel1.* FROM Tabel1 ORDER BY Tabel1.dato; og bruge den som input tabel.
HokusPokus med TOP 1 - driller idet der er flere tanke.
Så snart du har en aggregatfunktion i forespørgslen (Last, Sum, Count, Max eller lign.) så er du nødt til at gruppere, hvis du vil have kriterier og sortering med. Men hvis du bare Group'er på alle felter, så sker der jo ikke noget ved det.
Problemet ved din forespørgsel er, at hvis du vælger at vise totaler, så skriver den også "group By" under Last(Pejling) og First(Pejling). Her skal slet ikke stå noget. Hvis du starter fra scratch og vælger at det skal være en grupperingsforespørgsel og derefter vælger First og Last i rækken Total og derefter vælger sortering og kriterier, så får du noget der minder om det, jeg skrev 09:33:50. Den skulle da meget nødig vise alle poster!?
thomas> Problemet er, at din forespørgsel viser den første og sidste pejlinghver dag inden for perioden, mens nih kun vil se den første og sidste pejling i perioden. Det betyder at han så viddt jeg ved, ikke kan bruge HAVING, men skal have en WHERE. Har han det kan han ikke GROUP BY eller SORT BY på det samme felt.Jeg tor simpelthen ikke man kan lave en forespørgsel på de givne data, der sikrer art der altid findes de rigtige, også hvis de er indtastet forkert.
Til andre målinger anvender jeg MIN og MAX, men en olietank fyldes jo op en gang imellem - derfor det lidt irriterende problem at jeg SKAL finde den første og sidste pejling.
Jeg forstår problemet, men kan ikke lige komme op med en løsning. Hvis du indtatster den sidste pejling før den første, vil Access jo ikke på nogen måde kunne se forskel. Første og Sidste finder jo de første og sidste i tabellen, og hvis det der skull være sidste står før det, der skulle være første..... eller hvis du har nogen, som hverken er første eller sidste, men som står på en af de pladser.
SELECT Min(Tabel1.dato) AS d1, Max(Tabel1.dato) AS d2, DLookUp("[pejling]","tabel1","[dato] =#" & [d1] & "#") AS p1, DLookUp("[pejling]","tabel1","[dato] =#" & [d2] & "#") AS p2 FROM Tabel1 WHERE (((Tabel1.dato) Between #1/1/2002# And #2/1/2002#));
Den her giver det ønskede resultat - Men hvis et klogt hoved kan lave en 'ren' SQL, er der point.
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.