---
title: "Forum join"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/182643-forum-join"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Aram"
published: "2010-03-03T01:43:10.000Z"
updated: "2010-03-09T15:15:08.000Z"
replies: 5
views: 817
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/182643-forum-join"
---

# Forum join

## #1 — Aram, 2010-03-03T01:43Z

Hej alla!
Har lite problem med att plocka ut de senaste inlägget från tråden.
Några ideer? :P

```
SELECT p.subject, p.creator, p.date, x.username, x.fdate, ifnull(x.answers, 0) as answers

FROM forum_threads p

LEFT JOIN(SELECT id_thread, username, fdate, count(*) as answers FROM forum_reply

GROUP BY id_thread order by fdate DESC)
x on p.tid = x.id_thread where id_category = '1'
order by fdate ASC
```

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

## #2 — nitro2k01, 2010-03-03T02:47Z

Det vanligaste sättet att lösa detta problem är att helt sonika ha kolumner för  tiden och id't för det senaste inlägget i trådtabellen, och uppdatera dessa när nya inlägg görs i tråden. Det är både enklast och bäst ur prestanda-synvinkel.

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

## #3 — Aram, 2010-03-03T04:08Z

> **[nitro2k01 skrev:](https://www.webforum.nu/p/1499413)**
>
> Det vanligaste sättet att lösa detta problem är att helt sonika ha kolumner för  tiden och id't för det senaste inlägget i trådtabellen, och uppdatera dessa när nya inlägg görs i tråden. Det är både enklast och bäst ur prestanda-synvinkel.

hmm  :birp.. är det kanske bättre och skippa joins helt och hållet? hur är det med count grejen? drar det mycket prestanda?

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

## #4 — Peter S, 2010-03-03T19:06Z

Vad är det som inte fungerar? En sak är att du inte petar in tråd-id:t någonstans.

Så länge tabellerna joinas på indexerade kolumner är det inga problem. Primär- och sekundärnycklar, och kolumner som är UNIQUE indexeras som regel automatiskt. I flera fall kan det dock vara gynnsamt att spara beräkningar i egna fält, som nitro är inne på.

Ja, Count(\*) kan vara jobbig om villkoren som ställs är komplicerade; dbms måste ju faktiskt räkna varje rad som uppfyller villkoren.

Hur stora tabeller talar vi om?

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

## #5 — Aram, 2010-03-07T12:58Z

hmm

> **[Peter S skrev:](https://www.webforum.nu/p/1499481)**
>
> Vad är det som inte fungerar? En sak är att du inte petar in tråd-id:t någonstans.
> 
> Så länge tabellerna joinas på indexerade kolumner är det inga problem. Primär- och sekundärnycklar, och kolumner som är UNIQUE indexeras som regel automatiskt. I flera fall kan det dock vara gynnsamt att spara beräkningar i egna fält, som nitro är inne på.
> 
> Ja, Count(\*) kan vara jobbig om villkoren som ställs är komplicerade; dbms måste ju faktiskt räkna varje rad som uppfyller villkoren.
> 
> Hur stora tabeller talar vi om?

Hmm det är ett forum  som skall likna vbulletin..
Har ingen aning om hur många poster det kommer att vara.
Bättre och köra på nitro2k01 lösning

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

## #6 — Aram, 2010-03-09T15:15Z

....

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/182643-forum-join
