---
title: "sökväg i träd"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/151190-sökväg-i-träd"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "daniel_ra"
published: "2006-09-11T12:17:28.000Z"
updated: "2006-09-11T19:49:38.000Z"
replies: 2
views: 390
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/151190-sökväg-i-träd"
---

# sökväg i träd

## #1 — daniel_ra, 2006-09-11T12:17Z

hej hej

jag har skapat en trädstruktur där saker hör till olika kategorier. databasen ser ut som följande

ID \| namn \| subID

varje ID hör alltså till ett annat ID, exempel:

ID \| namn \| subID

0 \| root \| 0
1 \| fordon \| 0 
2 \| bil \| 2
3 \| båt \| 2

jag vill kunna skriva ut sökvägen till en speciell kategori. exempelvis

root/fordon/bil

detta så att jag lättare kan navigera mellan de olika kategorierna. Hur skulle jag kunna skriva min sqlfråga för få ut detta för en speciell kategori?

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

## #2 — emission, 2006-09-11T18:52Z

Om du har en begränsad mängd nivåer kan du få ut det i en fråga.

```
SELECT ISNULL('/' + t3.namn,'') + ISNULL('/' + t2.namn,'') + '/' + t1.namn 
FROM tabellen t1
LEFT OUTER JOIN tabellen t2 ON t2.ID=t1.subID
LEFT OUTER JOIN tabellen t3 ON t3.ID=t2.subID
```

Annars får du göra en rekursiv sökning (sök ut namnet, sedan namnet för föräldern, sedan förälderns förälder etc.). Om du har en databas som stöder triggers så kan du lösa det på annat sätt också.

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

## #3 — Pace, 2006-09-11T19:49Z

Om det är obegränsat med nivåer är det lättare med en så kallad "tree traversal".

Finns en bra guide här:
<http://www.sitepoint.com/article/hierarchical-data-database>

Samt:
<http://en.wikipedia.org/wiki/Tree_traversal>

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/151190-sökväg-i-träd
