---
title: "Knepig unique sql sats, ett värde av duplikat"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/110937-knepig-unique-sql-sats-ett-värde-av-duplikat"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "K++"
published: "2004-09-06T14:07:16.000Z"
updated: "2004-09-14T13:11:46.000Z"
replies: 10
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/110937-knepig-unique-sql-sats-ett-värde-av-duplikat"
---

# Knepig unique sql sats, ett värde av duplikat

## #1 — K++, 2004-09-06T14:07Z

Har funderat och funderat på hur man ska lösa detta i sql. Om det nu går, det jag vill ha i varje fall är en sql-sats som väljer ut fält där jag bara vill ha ett fält där det baseras på det senaste värdet.

Jag visar hur tabellen ser ut:

\+-----------------+
\| Titel \| Ordning \|
\+-----------------+
\| etttt \| 1234567 \|
\| etttt \| 2345678 \|
\| tvaa \| 1234567 \|
\| tvaa \| 2345678 \|
\+------------------+

Av sql satsen vill jag enbart ha ut
ettt 2345678 & tvaa 2345678 dvs de som har högst ordningsnummer. Och inte duplikaten av ettt. Går detta att lösa med sql?

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

## #2 — LarsG, 2004-09-06T16:12Z

```
select titel,max(ordning) 
from t
group by titel
```

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

## #3 — K++, 2004-09-06T18:57Z

Det verkar som att GROUP BY titel strular till det, då allt jag söker efter tas bort och de andra stannar kvar... Kanske beror på att de tidigare ligger innan i tabellen? eller?

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

## #4 — LarsG, 2004-09-06T19:00Z

På vilket sätt blir det fel resultat?

Exemplifiera.

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

## #5 — K++, 2004-09-14T11:48Z

Problemet är att den enbart tar ut värdet av max som max, jag har två kolumner för bilder  och om man kör max på de händer inget. 

dvs SELECT titel,max(ordning),bild1,bild2 Group by titel

Ger titel ej max, fält2 max, bild1 ej max, bild2 ej max, förstår du?

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

## #6 — LarsG, 2004-09-14T12:31Z

En fråga som ser ut på det sättet går inte att utföra på ett förutsägbart sätt. Därför så förbjuder alla DBMS utom Mysql sådana frågor. 

Det du får är godtyckliga värden för bild1 och bild2 och dessa har ingen koppling till den post som innehåller max(ordning). Du behöver inte ens få samma värden för bild1 och bild2 vid olika tillfällen.

```
select t1.title,t1.bild1,t1.bild1,t1.ordning
from t t1 join t t2 on t1.title = t2.title
group by  t1.title,t1.bild1,t1.bild1,t1.ordning
having t1.ordning = max(t2.ordning)
```

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

## #7 — K++, 2004-09-14T12:43Z

:stud Det förklarar varför jag inte lyckades komma på ngn lösning.. hm.. Måste man inte gruppera titlarna på ngt sätt?  :q

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

## #8 — K++, 2004-09-14T12:44Z

Eller rättare sagt behöver jag inte två tabeller för att göra en join?

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

## #9 — K++, 2004-09-14T12:44Z

Eftersom nu displayar den bara allt.. dvs

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

## #10 — K++, 2004-09-14T13:04Z

Eller hm.. t1 och t2 är inga referenser till tabeller som finns? :?

Edit: klart dom är hm..

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

## #11 — K++, 2004-09-14T13:11Z

Nu är det löst, råkade skriva lite fel.. :blush:

Men tack så mkt, det där har besparat en del hårstrån och en del cola! Trevligt att det finns sådana som du som är villiga att hjälpa!

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/110937-knepig-unique-sql-sats-ett-värde-av-duplikat
