---
title: "variabel stored procedure"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/79399-variabel-stored-procedure"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "clarkbones"
published: "2003-06-11T06:40:26.000Z"
updated: "2003-06-16T06:32:20.000Z"
replies: 6
views: 278
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/79399-variabel-stored-procedure"
---

# variabel stored procedure

## #1 — clarkbones, 2003-06-11T06:40Z

Hej!

Jag vill selecta ett fälts värde beroende på en parameter.

Jag har två parametrar:
@Measure 
@CompanyName

Jag har några olika fält i tabellen. Vilket jag är intresserad av att selektera bestäms av parametern @Measure. Två fältnamn jag har är 'profit' och 'costs'.  

såhär ser sqluttrycket ut:

SELECT @Measure FROM tbldata WHERE qCompanyName=@CompanyName

...men det blir inte rätt.

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

## #2 — LarsG, 2003-06-11T08:48Z

Jo, det blir rätt ;)

```
exec('SELECT ' + @Measure + ' FROM tbldata WHERE qCompanyName= ''' + @CompanyName + '''')
```

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

## #3 — @nders, 2003-06-11T10:04Z

Om man bygger upp frågan i sin lagrade procedur på detta sätt förlorar man dock de fördelar som förkompileringen av proceduren ger dig.

Mvh

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

## #4 — clarkbones, 2003-06-16T00:25Z

> **@nders skrev:**
>
> Om man bygger upp frågan i sin lagrade procedur på detta sätt förlorar man dock de fördelar som förkompileringen av proceduren ger dig.
> 
> Mvh

Såg först nu ditt svar @nders. Menar du oavsett vilket sätt man gör eller menar du just LarsG:s sätt? Ska jag istället ha fler olika sp:s och anropa dem?

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

## #5 — @nders, 2003-06-16T04:18Z

Om man bygger upp frågan i sin stored procedure enligt LarsGs exempel så går man miste om förkompileringen, vilket ju är en av anledningarna till att använda en SP.

Du kan använda flera procedurer, eller styra frågandet med if-satser i proceduren.

mvh

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

## #6 — clarkbones, 2003-06-16T04:31Z

Tack...ska testa med if

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

## #7 — clarkbones, 2003-06-16T06:32Z

hmmm, kan man använda någon elseif eller måste man nästla if-satser om man har exempelvis fyra olika scenarier och inte bara två som i en vanlig if-else struktur?

edit: Eller kan jag använda case?

Fundering: Varför kunde inte Microsoft gjort så att man kunde programmera med VB istället för Transact-SQL? Så mycket enklare det hade varit. SQL i sig kunde förstås få vara kvar

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/79399-variabel-stored-procedure
