---
title: "hjälp med en fråga, distinct eller group?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/184011-hjälp-med-en-fråga-distinct-eller-group"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Thomasa"
published: "2010-07-04T20:02:07.000Z"
updated: "2010-07-04T21:42:46.000Z"
replies: 5
views: 477
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/184011-hjälp-med-en-fråga-distinct-eller-group"
---

# hjälp med en fråga, distinct eller group?

## #1 — Thomasa, 2010-07-04T20:02Z

Jag försöker få till en select från en tabell som jag har. 
Den innehåller en kolumn med ett timestamp och en med ett namn (textsträng).

Tiderna är helt unika, men det finns t ex fem st som heter "Lopp nr 1 Herrar" med olika tider. Jag skulle vilja ha en fråga där jag får ut den tidigaste tiden för alla Lopp nr 1 Herrar, och grupperat/unikt på namnet. 

Alltså i DBn:
Namn: Lopp nr 1 Herrar Tid: 0900
Namn: Lopp nr 1 Herrar Tid: 0903
Namn: Lopp nr 1 Herrar Tid: 0905
Namn: Lopp nr 1 Herrar Tid: 0907
Namn: Lopp nr 1 Herrar Tid: 0909
Namn: Lopp nr 2 Damer Tid: 0915
Namn: Lopp nr 2 Damer Tid: 0917
Namn: Lopp nr 2 Damer Tid: 0919

Jag vill att min SQL hämtar
Lopp nr 1 Herrar, 0900
Lopp nr 1 Damer, 0915

tacksam för hjälp :)

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

## #2 — Thomasa, 2010-07-04T20:03Z

såhär heter de:

```
SELECT HeatName, starttid FROM ERT_Save_Heat
```

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

## #3 — aasah, 2010-07-04T20:36Z

I ditt fall vill du använda GROUP BY. Varför? Jo för ett visst värde på HeatName vill du ha ut det minsta tidsvärdet. För att avgöra vad som är minst måste du jämföra alla med samma HeatName (alltså gruppera på detta).

```
SELECT HeatName, MIN(starttid) [FirstHeat] 
FROM ERT_Save_Heat
GROUP BY HeatName
```

\----
DISTINCT används för att sålla bort dubbletter, säg att du vill visa alla HeatNames en gång:

```
SELECT DISTINCT HeatName 
FROM ERT_Save_Heat
```

 skriver ut från ditt exempel:

Lopp nr 1 Herrar
Lopp nr 2 Damer

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

## #4 — Thomasa, 2010-07-04T21:31Z

```
SELECT HeatName, MIN(starttid) as FirstHeat FROM ERT_Save_Heat WHERE day(starttid) = 12 GROUP BY HeatName
```

Lysande, hade velat ha dem sorterade efter starttid, men den smäller när jag lägger in en order by starttid, tips?

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

## #5 — aasah, 2010-07-04T21:41Z

> **[Thomasa skrev:](https://www.webforum.nu/p/1509961)**
>
> Lysande, hade velat ha dem sorterade efter starttid, men den smäller när jag lägger in en order by starttid, tips?

Du måste sortera på något som faktiskt kommer ut vid GROUP BY. Alltså de flesta starttider är ju inte minst. Så:

```
SELECT HeatName, MIN(starttid) as FirstHeat 
FROM ERT_Save_Heat 
WHERE day(starttid) = 12 
GROUP BY HeatName
ORDER BY MIN(starttid)
```

Borde fungera.

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

## #6 — Thomasa, 2010-07-04T21:42Z

stort tack!

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/184011-hjälp-med-en-fråga-distinct-eller-group
