---
title: "Hämta användar och joina med två andra tabeller men visa även om någon join inte görs"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/151382-hämta-användar-och-joina-med-två-andra-tabeller-men-visa-även-om-någon-join-inte-görs"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Addeladde"
published: "2006-09-16T22:48:08.000Z"
updated: "2006-10-06T12:14:13.000Z"
replies: 5
views: 354
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/151382-hämta-användar-och-joina-med-två-andra-tabeller-men-visa-även-om-någon-join-inte-görs"
---

# Hämta användar och joina med två andra tabeller men visa även om någon join inte görs

## #1 — Addeladde, 2006-09-16T22:48Z

Hej

Jag har en tabell med användare som i vissa fall är kopplade till en grupp. Nu visas alla som är kopplade till en grupp men inte de som inte är kopplade till en grupp. **Hur får jag de som inte är kopplade till grupp att även visas?**

```
Select a.*, g.gruppNamn from anvandare a, grupper g, gruppkoppling gk 
Where g.anvandarID = gk.anvandarID
And gk.gruppID = g.gruppID
Order by anvandarID
```

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

## #2 — @nders, 2006-09-17T07:17Z

Jag tycker inte att din SQL-fråga borde fungera, eftersom du inte har med användartabellen i något villkor.

\- - - - -

Gör en left join.

```
Select a.*, g.gruppNamn from anvandare a
left join gruppkoppling gk on a.anvandarID = gk.anvandarID
left join grupper g on gk.gruppID = g.gruppID
Order by a.anvandarID
```

(Jag har utgått ifrån att det finns ett vettigt fält i användartabellen med namnet *anvandarID*).

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

## #3 — Addeladde, 2006-09-17T09:11Z

Tack!

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

## #4 — Addeladde, 2006-09-27T21:36Z

> **@nders skrev:**
>
> Jag tycker inte att din SQL-fråga borde fungera, eftersom du inte har med användartabellen i något villkor.
> 
> \- - - - -
> 
> Gör en left join.
>
> ```
> Select a.*, g.gruppNamn from anvandare a
> left join gruppkoppling gk on a.anvandarID = gk.anvandarID
> left join grupper g on gk.gruppID = g.gruppID
> Order by a.anvandarID
> ```
>
> (Jag har utgått ifrån att det finns ett vettigt fält i användartabellen med namnet *anvandarID*).

Nu har ett problem dykt upp då en användare kan vara kopplad till flera grupper och då dyker upp som dubblett i listan. Går detta att få bort. Måste jag köra en group by kanske?

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

## #5 — emission, 2006-09-27T23:16Z

Ja, en group by, eller en distinct. Men, då kan du inte plocka ut gruppnamnet och resultatet blir samma som "select \* from anvandare". 

Vad är syftet med att ta med gruppkopplingen egentligen?

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

## #6 — Addeladde, 2006-10-06T12:14Z

Syftet är att få ut gruppnamnet

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/151382-hämta-användar-och-joina-med-två-andra-tabeller-men-visa-även-om-någon-join-inte-görs
