---
title: "Namn från annan tabell"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/158918-namn-från-annan-tabell"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Arne"
published: "2007-04-04T08:47:41.000Z"
updated: "2007-04-06T06:17:14.000Z"
replies: 7
views: 493
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/158918-namn-från-annan-tabell"
---

# Namn från annan tabell

## #1 — Arne, 2007-04-04T08:47Z

Har en selectsats där jag räknar antal medlemmar per förening från tabellen MEDLEM

```
SELECT COUNT(MEDLEM.FöreningId) AS [antal], MEDLEM.FöreningId From MEDLEM
Where (MEDLEM.DistriktId = 2)
GROUP BY MEDLEM.FöreningId
Order By MEDLEM.FöreningId
```

Tyvärr finns inte föreningsnamnet med i den tabellen (MEDLEM) utan den finns i tabellen DISTRIKT
FöreningId är det samma i tabellen MEDLEM och tabellen DISTRIKT

Nu visas bara columnen antal och FöreningId
Jag vill hämta columnen föreningsnamn från tabellen DISTRIKT så columnerna antal, FöreningId och Föreningsnamn visas.

Hur gör jag det. Har testat med join men får inte till det....

(använder MsSql)

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

## #2 — LarsG, 2007-04-04T11:44Z

```
SELECT COUNT(*) AS antal, 
          district.föreningsnamn
  From MEDLEM join district on medlem.föreningsid = district.föreningsid
Where MEDLEM.DistriktId = 2
GROUP BY district.Föreningsnamn
Order By district.Föreningsnamn
```

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

## #3 — Arne, 2007-04-04T13:02Z

visa 3 columner

försöker visa även MEDLEM.FöreningId men får:
Column 'MEDLEM.Förening'id is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

Vad felar?
Ursäkta dumma frågor......

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

## #4 — LarsG, 2007-04-04T13:13Z

Om du vill ha med fler kolumner i select-listan så måste du lägga till dem i group by också.

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

## #5 — Arne, 2007-04-04T18:22Z

Antal Män och Kvinnor

Tack för svaren, börjar se en strimma ljus nu;-)
Nedan får jag ut det jag vill just nu.

Distriktets id, föreningens id, samt antal medlemmar per förening i distriktid 25

```
SELECT COUNT(*) AS antal, m.föreningid, d.föreningsnamn
From MEDLEM m INNER JOIN DISTRIKT on m.distriktid = d.distriktid And m.föreningid = d.föreningid
Where m.distriktid = 25
GROUP BY d.Föreningsnamn,  m.föreningid
Order By m.föreningid
```

Men för att krångla till det ännu mer....
I tabellen MEDLEM finns det även en column  som heter SEX och alla medlemmar får värdet MAN eller KVINNA
Är det möjligt att i samma selectsats även lägga in 2 COUNT till. ta ut antal kvinnor och antal män per förening som listas?
Eller har jag övertro på sql:-)

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

## #6 — LarsG, 2007-04-04T19:30Z

```
SELECT COUNT(*) AS antal, 
      sum(case when sex = 'KVINNA' then 1 else 0 end) as F,
      sum(case when sex = 'MAN' then 1 else 0 end) as M,
      sum(case when sex not in('KVINNA','MAN') then 1 else 0 end) as T,
     m.föreningid, 
     d.föreningsnamn
From MEDLEM m INNER JOIN DISTRIKT d on m.distriktid = d.distriktid And m.föreningid = d.föreningid
Where m.distriktid = 25
GROUP BY d.Föreningsnamn,  m.föreningid
Order By m.föreningid
```

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

## #7 — Arne, 2007-04-04T19:51Z

Oj, man kan bara buga för detta och inser snabbt att man har mycket att lära.
Tusen tack för hjälpen, och som du redan visste fungerar det perfekt.....

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

## #8 — @nders, 2007-04-06T06:17Z

[Hur markerar jag vilket svar som löste mitt problem?](http://www.webforum.nu/faq.php?faq=vb_board_usage#faq_faq_acceptance)

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/158918-namn-från-annan-tabell
