---
title: "unika poster"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/82298-unika-poster"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "K@llen"
published: "2003-07-18T22:39:14.000Z"
updated: "2003-07-19T14:32:18.000Z"
replies: 10
views: 276
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/82298-unika-poster"
---

# unika poster

## #1 — K@llen, 2003-07-18T22:39Z

Hej,

Jag vill ha ut unikt **intArtikelSerial** sorterade efter när en artikel kommenterades senast. Har testat DISTINCT, samt att gruppera på samtliga fält i selectlistan. I min enfald trodde jag att den feta raden i koden skulle fixa saken eftersom endast en post kan stämma överens med det villkoret.

Hur fasiken gör man?

```
SELECT a.intArtikelSerial, a.intArtikelId, a.intKatId, a.strArtikelRubrik  
FROM artikel a 
INNER JOIN artikel_comment ac
ON ( a.intArtikelId = ac.intArtSerieId ) 	   
[b]WHERE a.intArtikelSerial = a.intArtikelId [/b] 
ORDER BY ac.dteCommentDate DESC LIMIT 8
```

dbms: mysql

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

## #2 — K@llen, 2003-07-18T23:06Z

Jag läste detta och blev nu ännu mer förvirrad:
<http://www.mysql.com/doc/en/DISTINCT_optimisation.html>

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

## #3 — K@llen, 2003-07-19T12:27Z

Hej,

Nu har jag fått ut unika poster. :)

**Men** jag har fortfarande lite beskymmer. Den sorterar knasigt. Jag vill ha den artikeln som kommenterades senast överst och sedan den näst senaste osv.

```
SELECT ac.intArtSerieId, a.intArtikelSerial, a.intArtikelId, a.intKatId, a.strArtikelRubrik   
FROM artikel a 
LEFT OUTER JOIN artikel_comment ac
ON ( a.intArtikelId = ac.intArtSerieId )   
WHERE a.intArtikelSerial = a.intArtikelId 
GROUP BY ac.intArtSerieId, a.intArtikelSerial, a.intArtikelId, a.intKatId, a.strArtikelRubrik 
ORDER BY ac.dteCommentDate DESC LIMIT 8
```

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

## #4 — LarsG, 2003-07-19T12:37Z

Din fråga är inte entydig och borde egentligen inte godkännas som korrekt.

```
SELECT ac.intArtSerieId, a.intArtikelSerial, a.intArtikelId, a.intKatId, a.strArtikelRubrik , max(ac.dteCommentDate) as x  
FROM artikel a 
LEFT OUTER JOIN artikel_comment ac
ON ( a.intArtikelId = ac.intArtSerieId )   
WHERE a.intArtikelSerial = a.intArtikelId 
GROUP BY ac.intArtSerieId, a.intArtikelSerial, a.intArtikelId, a.intKatId, a.strArtikelRubrik 
ORDER BY x DESC LIMIT 8
```

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

## #5 — K@llen, 2003-07-19T12:42Z

> **LarsG skrev:**
>
> Din fråga är inte entydig och borde egentligen inte godkännas som korrekt.
> 
>
>
> ```
> SELECT ac.intArtSerieId, a.intArtikelSerial, a.intArtikelId, a.intKatId, a.strArtikelRubrik , max(ac.dteCommentDate) as x  
> FROM artikel a 
> LEFT OUTER JOIN artikel_comment ac
> ON ( a.intArtikelId = ac.intArtSerieId )   
> WHERE a.intArtikelSerial = a.intArtikelId 
> GROUP BY ac.intArtSerieId, a.intArtikelSerial, a.intArtikelId, a.intKatId, a.strArtikelRubrik 
> ORDER BY x DESC LIMIT 8
> ```

Tack, fungerar utmärkt LarsG! :)

Jag provade en sådan variant också, kan man inte sortera efter ordningsnummer i mysql?

Men nu får du även säga B, vad är inte entydigt?

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

## #6 — LarsG, 2003-07-19T13:08Z

Ett exempel

A B
\----
1 1 
2 2
1 3

```
select a from t group by a order by b
```

I och med att du har group by så  får du två poster 

A
\--
1
2

men vilket värde från B skall användas för sorteringen då A = 1? 

1 eller 3? Beroende på vilket värde man skulle välja så blir det olika sortering och det finns inget som säger vilket av de möjliga B-värdena som skall användas.

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

## #7 — K@llen, 2003-07-19T13:10Z

Ahhh. nu hajar jag. :D

Men hur ska man göra så frågan blir 100% korrekt?

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

## #8 — LarsG, 2003-07-19T13:17Z

Hur då 100% korrekt?

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

## #9 — K@llen, 2003-07-19T13:24Z

> **LarsG skrev:**
>
> Din fråga är inte entydig och borde egentligen inte godkännas som korrekt

> **LarsG skrev:**
>
> Hur då 100% korrekt?

Alltså så att frågan blir entydig och därmed korrekt. 

Jag misstänker att det går att göra med saker som mysql-(versionen) inte stödjer, men kan den bli entydíg och korrekt även med denna dbms. I detta avseende borde det väl kvitta om sorteringen sker på ena eller andra fältet/aliaset?

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

## #10 — LarsG, 2003-07-19T13:50Z

Den fråga som jag skrev är korrekt (och entydig).

Que?

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

## #11 — K@llen, 2003-07-19T14:32Z

Nu när jag läst din förklaring en gång till trillade femöringen ner. Kan man skylla på värmen? :r

LarsG, du ska ha ett stort tack för din hjälpsamhet! :)

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/82298-unika-poster
