---
title: "Helt olika resultat (datum jmf tal)"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/128254-helt-olika-resultat-datum-jmf-tal"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "wazid"
published: "2005-05-15T09:48:32.000Z"
updated: "2005-05-15T11:41:37.000Z"
replies: 4
views: 314
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/128254-helt-olika-resultat-datum-jmf-tal"
---

# Helt olika resultat (datum jmf tal)

## #1 — wazid, 2005-05-15T09:48Z

Hej

Jag förstår inte varför jag får olika utfall på följande två frågor i Access.

```
SELECT top 1 Test.artikelnr, Max(Test.datum) AS Maxfördatum, Test.saldo
FROM Test
GROUP BY Test.artikelnr, Test.saldo
HAVING (((Max(Test.datum))<#2/2/2004#))
ORDER BY Max(Test.datum) DESC;
```

```
SELECT  top 1 MVXADTA001_MITTRA.MTITNO, Max(MVXADTA001_MITTRA.MTTRDT) AS MaxförMTTRDT, MVXADTA001_MITTRA.MTNSTQ
FROM MVXADTA001_MITTRA
GROUP BY MVXADTA001_MITTRA.MTITNO, MVXADTA001_MITTRA.MTNSTQ
HAVING (((Max(MVXADTA001_MITTRA.MTTRDT))<20040701))
ORDER BY Max(MVXADTA001_MITTRA.MTTRDT) DESC;
```

Det är så att den första frågan fungera. Den levererar ut aktuellt saldo för alla artikelnr i tabellen.
Medan fråga två endast levererar ut en rad i resultatet (alltså bara för ett artikelnr)
Det som skiljer är att i den första är datumet i ett datumfält och i den andra frågan är datumet ett tal.

Permalänk: https://www.webforum.nu/p/128254

## #2 — LarsG, 2005-05-15T10:27Z

Även om du har top 1 så kommer access att hämta alla poster där Max(MVXADTA001_MITTRA.MTTRDT) är lika.

Permalänk: https://www.webforum.nu/p/1612722

## #3 — wazid, 2005-05-15T10:35Z

Jaha, det förklarar en del!
Dock kvarstår mitt problem, hur jag ska få ut en rad per artikelnr....

Permalänk: https://www.webforum.nu/p/1612723

## #4 — LarsG, 2005-05-15T10:56Z

```
SELECT artikelnr, datum, saldo
FROM Test as q
where datum in (select max(datum)
from test
where q.artikelnr = test.artikelnr
and datum <#2/2/2004#)
order by datum DESC
```

Permalänk: https://www.webforum.nu/p/1612727

## #5 — wazid, 2005-05-15T11:41Z

Perfekt!

Tack LarsG

Nu ska jag bara putsa till det lite.
Av någon anledning får jag ut dubbelt med rader men det fixades till med en distinct.

Dock kvarstår ett problem.
Om en artikeln förekommer flera gånger på samma datum, så kommer alla raderna med. Jag vill bara ha med den senaste raden.

```
SELECT DISTINCT MTNSTQ, MTITNO, MTTRDT, MTWHLO, MTRGTM
FROM         dbo.MITTRA q
WHERE     (MTTRDT IN
                          (SELECT     MAX(MTTRDT)
                            FROM          dbo.MITTRA
                            WHERE      q.MTITNO = dbo.MITTRA.MTITNO AND q.MTWHLO = dbo.MITTRA.MTWHLO AND MTTRDT < 20040701))
ORDER BY MTITNO, MTTRDT DESC, MTRGTM DESC, MTWHLO
```

Jag skulle då vilja sortera ut efter fältet MTRGTM, som innehåller klockslaget. Kan man få med det i samma SELECT?

MVH

David

Permalänk: https://www.webforum.nu/p/1612737

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/128254-helt-olika-resultat-datum-jmf-tal
