---
title: "MS SQL fråga som jag inte får ihop."
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/170230-ms-sql-fråga-som-jag-inte-får-ihop"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Sjodahl"
published: "2008-03-25T21:27:20.000Z"
updated: "2008-03-26T17:43:49.000Z"
replies: 5
views: 543
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/170230-ms-sql-fråga-som-jag-inte-får-ihop"
---

# MS SQL fråga som jag inte får ihop.

## #1 — Sjodahl, 2008-03-25T21:27Z

Hej!

Följande utgångsläge: (MS SQL)
För att lösa detta idag så för jag typ enligt följande i ASP kod.

```
1.Hämtar alla perioder och loopar igenom dessa
{
    2.Hämtar ut alla kategorier och loopar igenom dessa
    {
         3.Kontrollera alla kategorier i transLog och summera ihop.
        SELECT isnull(sum(nvalue), 0) AS Summa FROM transLog WHERE category='30' AND transDate BETWEEN '2008-03-20' AND '2008-04-25'
    }

}
```

Detta leder till att jag ställer ca 130st frågor emot databasen just nu för att ladda min sida. Men lyckas inte ställa någon smartare fråga. 2-3 känns som man borde kunna slå ihop rätt lätt.

Såhär vill jag ha ut det:
\---------------------------------------------
PERIOD \| Category1 \| Category2 \| Category3 \|
\---------------------------------------------
0701 \| 450 kr       \|  5460kr    \|  -3434kr    \|
\---------------------------------------------
0702 \| 350 kr       \|  4630kr    \|  -2344kr    \|
\---------------------------------------------

Bilagor:

- [Untitled.jpg](https://www.webforum.nu/a/17515.jpg)

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

## #2 — Peter S, 2008-03-26T14:57Z

```
select p.pname
     , c.catid
     , isnull(sum(l.nvalue), 0) AS Summa
  from periods p
inner
  join translog l
    on l.transdate between p.startdate and p.enddate
inner
  join category c
    on c.catid = l.category
group
    by p.pname
     , c.catid
```

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

## #3 — Sjodahl, 2008-03-26T17:31Z

Verkar absolut vara åt det hållet jag är ute efter.
Skulle även vilja klämma in userId='161' någonstans (så man bara får för just detta ID:et). Och istället för att visa själva catId så skulle jag vilja se "category".

Resultat just nu:

Bilagor:

- [resultat.jpg](https://www.webforum.nu/a/17531.jpg)

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

## #4 — Sjodahl, 2008-03-26T17:38Z

Då skall vi se om detta kan stämma:

```
select p.pname, c.category
     , c.catid
     , isnull(sum(l.nvalue), 0) AS Summa
  from periods p 
inner
  join translog l
    on l.transdate between p.startdate and p.enddate
inner
  join category c
    on c.catid = l.category AND c.userId='161' AND l.userId='161'
where p.userId='161'
group
    by p.pname
     , c.catid
	 , c.category
```

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

## #5 — Peter S, 2008-03-26T17:41Z

Är 'category' unikt?

```
select p.pname
     , c.category
     , isnull(sum(l.nvalue), 0) AS Summa
  from periods p 
inner
  join translog l
    on l.transdate between p.startdate and p.enddate
inner
  join category c
    on c.catid = l.category
 where p.userId = 161
group
    by p.pname
     , c.category
```

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

## #6 — Sjodahl, 2008-03-26T17:43Z

> **Peter S skrev:**
>
> Är 'category' unikt?

Hej, category behöver inte vara unik idag. (men borde nog se till så man inte kan lägga till en kategori som redan finns).
Stort tack, tror nu att jag fått ut det jag ville. Skall jag bara lyckas få in det på sidan med.

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/170230-ms-sql-fråga-som-jag-inte-får-ihop
