---
title: "Problem med urval och join"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/89948-problem-med-urval-och-join"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "wazid"
published: "2003-11-08T18:25:51.000Z"
updated: "2003-11-09T08:07:27.000Z"
replies: 3
views: 262
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/89948-problem-med-urval-och-join"
---

# Problem med urval och join

## #1 — wazid, 2003-11-08T18:25Z

Hejsan

Jag önskar lista ut vem som är innehavare av repsektive dokument. För det har jag en logglista.

Jag har tre tabeller som jag joinar ihop med följande kod 

```
SELECT     PU_logglista_rader.Mainid, PU_logglista_huvud.Lopnr, PU_logglista_huvud.Startdatum, PU_logglista_huvud.Namn, users.Fornamn, 
                      users.Efternamn, PU_logglista_rader.Datum, PU_logglista_rader.Id
FROM         users INNER JOIN
                      PU_logglista_rader ON users.ID = PU_logglista_rader.Person INNER JOIN
                      PU_logglista_huvud ON PU_logglista_rader.Mainid = PU_logglista_huvud.Id
ORDER BY PU_logglista_rader.Mainid DESC, PU_logglista_rader.Datum DESC, PU_logglista_rader.Id DESC
```

Mitt problem är att jag skulle bara vilja ha ut en rad per Mainid, och den raden ska vara den som har högst värde för Id.

Idag listas alla rader ut för varje Mainid (och det kan vara upp till tio stycken), men jag vill bara ha den "nyaste" raden.

MvH

David

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

## #2 — wazid, 2003-11-08T18:30Z

Mer info

Så här blir resultatet :

	153	228-03	2003-11-07	Alkaclean 50	Anders          	Eriksson                        	2003-11-07	741
	153	228-03	2003-11-07	Alkaclean 50	Dean            	Zenzerovic                      	2003-11-07	740
	152	227-03	2003-11-06	Trollull 000	Christer        	Ekstrand                        	2003-11-07	739
	152	227-03	2003-11-06	Trollull 000	Anders          	Eriksson                        	2003-11-07	738
	152	227-03	2003-11-06	Trollull 000	Tommie	Nilsson	2003-11-06	737
	152	227-03	2003-11-06	Trollull 000	Dean            	Zenzerovic                      	2003-11-06	736

Mainid är första värdet.
Så jag skulle bara vilja ha två rader som resultat.
En för 153 och en för 152.

MvH

David

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

## #3 — LarsG, 2003-11-08T18:38Z

```
SELECT PU_logglista_rader.Mainid, 
   PU_logglista_huvud.Lopnr, 
   PU_logglista_huvud.Startdatum, 
   PU_logglista_huvud.Namn, 
   users.Fornamn, 
   users.Efternamn, PU_logglista_rader.Datum,     
   PUL.Id
  FROM users INNER JOIN PU_logglista_rader  as PUL
   ON users.ID = PU_logglista_rader.Person 
    INNER JOIN PU_logglista_huvud 
    ON PU_logglista_rader.Mainid = PU_logglista_huvud.Id
where Id in (
select max(id) 
   from PU_logglista_rader
  where mainid = pul.mainid )
ORDER BY PU_logglista_rader.Mainid DESC, PU_logglista_rader.Datum DESC, 
PU_logglista_rader.Id DESC
```

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

## #4 — wazid, 2003-11-09T08:07Z

Bockar och bugar för hjälpen.
Det fungerar perfekt!

David

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/89948-problem-med-urval-och-join
