---
title: "MAX()"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/138998-max"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Uwe"
published: "2005-12-08T10:53:36.000Z"
updated: "2005-12-08T15:05:47.000Z"
replies: 4
views: 340
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/138998-max"
---

# MAX()

## #1 — Uwe, 2005-12-08T10:53Z

Har problem med en fråga där jag försöker få fram ett resultat där endast det senaste värdet visas.

```
Tabeller

file
-------
fid  (int)
counts (int)

mode
-------
fid (int)
mid (int)
datetime (date)
mode (int)
```

Det jag har försökt med är typ såhär:

```
SELECT	F.fid, mode, max(datetime) as datum, counts
FROM file F, mode M
WHERE F.fid=m.fid AND DateTime BETWEEN '2000-01-01 00:00:00' AND '2006-01-01 00:00:00'
GROUP BY F.fid, mode, counts
```

När jag gör denna får jag ut flera poster för varje fid, det jag vill ha är endast den som har det senaste datumet. Går det att göra en sån fråga?

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

## #2 — Travoni, 2005-12-08T11:10Z

Ett fältnamn som heter datatime tycker jag låter suspekt.

```
SELECT Top 1 F.fid, mode, max(datetime) as datum, counts
FROM file F, mode M
WHERE F.fid=m.fid AND [DateTime] BETWEEN '2000-01-01 00:00:00' AND '2006-01-01 00:00:00'
GROUP BY F.fid, mode, counts ORDER BY [DateTime]
```

 \*Något åt det hållet.

BTW; uppge alltid vilken databas vi talar om eftersom att mySql använder limit istället för top.

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

## #3 — Uwe, 2005-12-08T13:07Z

> **Travoni skrev:**
>
> Ett fältnamn som heter datatime tycker jag låter suspekt.
>
> ```
> SELECT Top 1 F.fid, mode, max(datetime) as datum, counts
> FROM file F, mode M
> WHERE F.fid=m.fid AND [DateTime] BETWEEN '2000-01-01 00:00:00' AND '2006-01-01 00:00:00'
> GROUP BY F.fid, mode, counts ORDER BY [DateTime]
> ```
>
>  \*Något åt det hållet.
> 
> BTW; uppge alltid vilken databas vi talar om eftersom att mySql använder limit istället för top.

Databsen är SQL Server.

Jag var kanske lite otydlig. Det jag vill ha ut är inte bara ett svar, utan ett record per fid.

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

## #4 — LarsG, 2005-12-08T14:09Z

```
SELECT	F.fid, mode, datetime as datum, counts
FROM file F, mode M
WHERE F.fid=m.fid 
AND DateTime BETWEEN '2000-01-01 00:00:00' AND '2006-01-01 00:00:00'
and datetime in
   (select max(datetime)
        from mode
      where mode.fid = m.fid)
```

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

## #5 — Uwe, 2005-12-08T15:05Z

> **LarsG skrev:**
>
> ```
> SELECT	F.fid, mode, datetime as datum, counts
> FROM file F, mode M
> WHERE F.fid=m.fid 
> AND DateTime BETWEEN '2000-01-01 00:00:00' AND '2006-01-01 00:00:00'
> and datetime in
>    (select max(datetime)
>         from mode
>       where mode.fid = m.fid)
> ```

Tack, funkar kanon!

Har aldrig sett att det går att använda en del från huvudfrågan i subfrågan som du gör med m.fid, vet du nån bra sida man kan hitta mer information om detta?

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/138998-max
