---
title: "visa senaste i forum"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/61724-visa-senaste-i-forum"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "doggelito"
published: "2002-12-09T18:53:26.000Z"
updated: "2002-12-10T16:24:30.000Z"
replies: 3
views: 335
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/61724-visa-senaste-i-forum"
---

# visa senaste i forum

## #1 — doggelito, 2002-12-09T18:53Z

ska pussla ihop ett forum men har fastnat på detta:
databasen är av klassisk struktur i ms-sql2000

tblcategories
 \-categoryid

tblQuestions
 \-questionid
 \-categoryid
 \-regdate

tblReplies
 \-replyid
 \-questionid
 \-regdate

av detta vill jag få ut:
1\. antal svar (tblReplies)
2\. vem som skrev senast i kategorin
(det är här det kör ihop sig, är regdate nyare i tblQuestions än i tblReplies så ska frågan visas annars svaret!)

detta vill jag ha i en sql-sats om det går :)

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

## #2 — LarsG, 2002-12-09T22:29Z

Du lagrar alltså frågan i en questions och svaren i replies?

Jag skulle lagra alla inlägg i en tabell och bara ha titel/startDatum/categori i questions

Då skulle regDate i replies alltid innehålla datum för senaste inlägg.

Men men

Antal svar (På en fråga eller inom en kategori eller totalt?)

```
select count(*) from tblReplies where questionid = 4711
```

Senast inlägg i en kategor

```
select max(coalesce(r.regdate,q.regdate)) 
  from tblQuestions q left outer join tblReplies r
    on q.questionid = r.questionid
 where categoryid = 4711
```

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

## #3 — doggelito, 2002-12-10T06:40Z

> **LarsG skrev:**
>
> Jag skulle lagra alla inlägg i en tabell och bara ha titel/startDatum/categori i questions 
> 
> Då skulle regDate i replies alltid innehålla datum för senaste inlägg. 
> 
> Men men

det skulle jag också om jag kunde börja från början!

coalesce funkar inte riktigt, den tar alltid värdet från första kolumnen som man skrivit.
skulle behöva jämföra högsta värdena först från de två tabellerna och sen visa det som är högst.
sedan var tanken att lägga in count(\*) i samma sats om det går?

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

## #4 — LarsG, 2002-12-10T16:24Z

Vill du ha maxdatum inom varje kategori

```
select categoryid,max(case when q.regDate > r.regdate then q.regDate else r.regdate) as maxdate
from tblquestions q left join tblreplies
on q.questionid = r.questionid
group by categoryid
```

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/61724-visa-senaste-i-forum
