---
title: "Unik hämtning"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/43333-unik-hämtning"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "LAMP"
published: "2002-05-07T22:59:56.000Z"
updated: "2002-05-09T16:44:42.000Z"
replies: 11
views: 329
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/43333-unik-hämtning"
---

# Unik hämtning

## #1 — LAMP, 2002-05-07T22:59Z

Bör man inte kunna utesluta dubletter med denna sql:en

```
SQL ="select distinct Email from mail order by Email"
```

fälttypen är varchar och jag får ut dubletter trots användandet av distinct.

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

## #2 — LarsG, 2002-05-08T07:26Z

Jodå, det skall fungera så. Ser din sql-sats ut exakt så som du har skrivit?

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

## #3 — LAMP, 2002-05-08T12:10Z

Jo, den är kopierad med Ctrl + c och inklistrad med Ctrl + v.

Mycket märkligt :(

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

## #4 — @nders, 2002-05-08T14:49Z

Om det inte råkar vara så att vissa e-postadresser har exempelvis mellanslag före eller efter sig i fältet, då kan det ju se ut som att samma adress kommer fler gånger.

mvh,

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

## #5 — LarsG, 2002-05-08T16:16Z

Avslutande blanka är inte signifikanta vid distinct.

Däremot så är inledande blanka signifikanta, men dessa borde vara lättare att se.

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

## #6 — LAMP, 2002-05-09T09:11Z

smart! men då borde jag få ut rätt med denna?

```
SQL ="select distinct trim(Email) from mail order by Email"
```

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

## #7 — @nders, 2002-05-09T09:17Z

Vad använder du för dbms? Med Access borde det där fungera, men i T-SQL (SQL Server) finns inte Trim, utan du får använda LTRIM() för att slänga bort inledande blanka.

Möjligen får du med Access ha *Order by 1* istället, och i SQL-Server ge ett alias på fältet, som du sedan sorterar på.

Mvh,

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

## #8 — LAMP, 2002-05-09T10:51Z

Tack, LTrim() löste problemet. Är inte första fältet i sql:en nr 0 ?

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

## #9 — SPiN, 2002-05-09T10:55Z

Jäpp, det är det.

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

## #10 — @nders, 2002-05-09T13:36Z

Nej, det är det inte, det är 1. Av någon anledning.
Det är dock ganska Access-specifikt.

Däremot, när du använder recordset på exempelvis en ASP-sida så är är första indexet 0.

Mvh,

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

## #11 — LarsG, 2002-05-09T15:15Z

Det är inte Access-specifikt att man kan använda 

```
order by 1
```

Det stöds av de flesta dbms, även om det är borttaget ur SQL 99. Det som dock inte finns i Access är att man kan använda aliasnamn i order by.

```
select distinct email trim(email) as e from t order by e
```

Det finns i de flesta dbms och det är så det är tänkt enligt SQL 99

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

## #12 — @nders, 2002-05-09T16:44Z

En tacker för förklaringen! :D

Mvh,

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/43333-unik-hämtning
