---
title: "Distinct på 1 fält"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/88604-distinct-på-1-fält"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Insider"
published: "2003-10-16T09:16:57.000Z"
updated: "2004-02-10T13:15:16.000Z"
replies: 9
views: 401
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/88604-distinct-på-1-fält"
---

# Distinct på 1 fält

## #1 — Insider, 2003-10-16T09:16Z

Jag har en tabell med ett slags ID, 'FNR'. Detta ID finns det dubletter av.

Jag vill visa alla fälten, men bara en rad för varje FNR. De andra fälten får det finnas dubletter av.

När jag kör nedanstående så sorteras bara rader bort där ALLA fälten är lika, och det lämnas flera rader med samma FNR.

```
SELECT DISTINCT FNR, PERSONNR, KORTNAMN, POSTNR, POSTORT
FROM TABELL;
```

Kan man inte använda distinct?

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

## #2 — SPiN, 2003-10-16T09:21Z

```
SELET DISTINCT(FNR),PERSONNR...
```

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

## #3 — Insider, 2003-10-16T09:24Z

Nja, det verkar inte funka. Får fortfarande dubletter av FNR.
Jag kör Access 2000.

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

## #4 — LarsG, 2003-10-16T09:51Z

I och med att det finns flera möjliga val av värden från 

PERSONNR, KORTNAMN, POSTNR, POSTORT

så måste man bestämma vilket av dessa man vill ha

minsta/största/slumpmässigt ?

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

## #5 — Insider, 2003-10-16T11:23Z

slumpmässigt

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

## #6 — LarsG, 2003-10-16T14:56Z

```
SELECT FNR, 
   first(PERSONNR),
   first( KORTNAMN), 
   first(POSTNR), 
   first(POSTORT)
FROM TABELL
group by fnr
```

Försök inte med detta i någon annan DBMS än Access.

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

## #7 — ptype, 2004-02-10T11:39Z

finns det motsvarande i SQL Server??
Jag har en tabell där det finns många poster som hör till samma id, men där posterna har olika datum. Jag skulle vilja plocka ut alla id:n där DEN SENASTE uppfyller ett visst villkor.

 :q 

mvh p-type

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

## #8 — LarsG, 2004-02-10T11:44Z

```
select id,max(datum)
from t
group by id
having max(datum) < '1996-04-23'
```

Du får gärna delge lite mer detaljer angående

> DEN SENASTE uppfyller ett visst villkor.

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

## #9 — ptype, 2004-02-10T12:23Z

tack för svaret

med den senaste menar jag den post som har det senaste datumet. 

det verkar fungera med

```
select id,max(datum)
from t
group by id
where (villkor)
```

  :e 

men med detta sätt går det inte att få ut även andra fält från tabellen i selectsatsen?

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

## #10 — LarsG, 2004-02-10T13:15Z

```
select id,datum <,....>
from t as q
where datum in (
   select max(datum) 
    from t 
  where t.id = q.id)
```

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/88604-distinct-på-1-fält
