---
title: "Får inte till en gruppering"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/79614-får-inte-till-en-gruppering"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Gein"
published: "2003-06-12T23:32:05.000Z"
updated: "2003-06-14T22:00:51.000Z"
replies: 10
views: 249
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/79614-får-inte-till-en-gruppering"
---

# Får inte till en gruppering

## #1 — Gein, 2003-06-12T23:32Z

Jag har en tabell med 4 fält. admin, fund, rate och ratedate.
De första två är strängar, rate är en float och ratedate är ett datum.

Nu vill jag hämta ut fälten, men den ska bara ta de fält där ratedate är störst (eller senaste datumet om så vill) för varje (admin, fund). Alltså, admin och fund måste grupperas på något sätt? För dom hör ihop.
Mitt försök ser ut såhär:

```
SELECT * FROM funds_gein GROUP BY admin, fund ORDER BY ratedate desc
```

Men det fungerar inte som det ska. Den gör som den ska med den enda skillnaden att den verkar ta det första datumet istället för det senaste.
Nån som begriper mitt problem?

r/ Problemet verkar vara att den grupperar innan den kör ORDER. Då är det ju logiskt att det blir som det blir, eftersom det äldsta datumen ligger överst.. men hur göra?

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

## #2 — LarsG, 2003-06-13T08:15Z

```
select * from funds_gein fg
where ratedate = (
select max(ratedate) from funds_gein
 where fund = fg.fund
 and admin = fg.admin)
```

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

## #3 — Gein, 2003-06-13T10:10Z

> **LarsG skrev:**
>
> ```
> select * from funds_gein fg
> where ratedate = (
> select max(ratedate) from funds_gein
>  where fund = fg.fund
>  and admin = fg.admin)
> ```

You have an error in your SQL syntax near 'select max(ratedate) from funds_gein where fund = fg.fund and admin = fg.admin)' at line 1
Jag kör mySQL om det har någon betydelse.

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

## #4 — Gein, 2003-06-13T15:23Z

Går det verkligen göra en select-sats som bygger på en annan select-sats? Funkar inte i detta fall iaf. Går det att lösa på annat sätt kanske?

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

## #5 — LarsG, 2003-06-13T16:02Z

Det går med alla databaser utom Mysql.

I Mysql får man dela upp det i flera steg, det finns en beskrivning i manualen som du borde hitta om du tittar igenom innehållsförteckningen.  Den heter ungefär getting the piecewise maximum. Eller så får du vänta påå nästa version av Mysql.

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

## #6 — Gein, 2003-06-13T17:27Z

Ajdå, det va synd  :x 
Får väl försöka hitta det i manualen då, fast fick ingen träff alls på piecewise.

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

## #7 — LarsG, 2003-06-13T17:32Z

<http://www.mysql.com/doc/en/example-Maximum-column-group-row.html>

Groupwise, annars så var det rätt.

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

## #8 — Gein, 2003-06-13T17:34Z

Tack ska du ha! :D

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

## #9 — Gein, 2003-06-14T17:10Z

Märker att jag fortfarande har problem. Nu tar den ut det senaste datumet, fast tillsammans med den äldsta kursen (rate). Även fast dom alltså inte hör ihop

T.ex
select admin, fund, rate, max(ratedate) from funds_gein GROUP BY admin, fund 
ger mej

```
admin	fund		rate	max(ratedate)
Banco	Banco Alleman	320,78	2003-06-14
Nordea	Alfa		365,15	2003-06-14
osv.
```

fast Banco - Banco Alleman hade kursen (rate) 316,48 datumet 2003-06-14 enligt databasen.

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

## #10 — LarsG, 2003-06-14T21:59Z

Det går inte att använda group by för detta. Att din sql-sats överhuvudtaget blir godkänd beror på ett fel i Mysql. Vilket  värde du får på rate är slumpmässigt.

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

## #11 — Gein, 2003-06-14T22:00Z

Jag förstår, hur som helst löste jag hela problemet på ett helt annat sätt. Tänk om och tänk bättre brukar ofta funka ;) Tack iaf!

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/79614-får-inte-till-en-gruppering
