---
title: "SP som gör en liten komplicerad procedur"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/140023-sp-som-gör-en-liten-komplicerad-procedur"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Jesper T"
published: "2005-12-29T11:21:43.000Z"
updated: "2005-12-29T12:18:56.000Z"
replies: 3
views: 295
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/140023-sp-som-gör-en-liten-komplicerad-procedur"
---

# SP som gör en liten komplicerad procedur

## #1 — Jesper T, 2005-12-29T11:21Z

Jag skulle behöva en SP som utför en procedur som utför något liknande:

Tbl1
id \| frukt
\------------
1 \| banan
2 \| äpple
3 \| päron
4 \| äpple

Tbl2
id \| fid \| frukt
\---------------
1 \| 23a \| apelsin
2 \| 24h \| banan
3 \| 25g \| äpple
4 \| 26d \| päron

Tbl 1 är en tabell med platt struktur, alltså frukterna lagras flera gånger efter varandra.
Nu har jag skapat en tabell så att varje frukt har ett id/produktnummer.
Det jag nu vill göra är att ta bort "frukt-kolumnen" och lägga till en "fid-kolumn" i Tbl1 och flytta över fid:t ifrån tbl2 till motsvarande frukt i tbl1.

MSDB = Ms Sql

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

## #2 — @nders, 2005-12-29T11:27Z

Jag hade försökt med typ detta:

```
create procedure foo as 

alter table tbl1 add fid varchar(5) null

update tbl1
set fid = t2.fid
from tbl1 t1, tbl2 t2
where t1.frukt = t2.frukt

go
```

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

## #3 — Jesper T, 2005-12-29T12:16Z

Tack, @nders. Dock en liten miss. :)

```
update tbl1
set fid = t2.fid
from tbl1 t1, tbl2 t2
where t1.frukt = t2.frukt
```

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

## #4 — @nders, 2005-12-29T12:18Z

Klantigt. :)

Nåväl, det löste ju sig ändå! :bire

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/140023-sp-som-gör-en-liten-komplicerad-procedur
