---
title: "Tsql"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/51278-tsql"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "yohpops"
published: "2002-08-26T07:47:40.000Z"
updated: "2002-08-26T08:41:36.000Z"
replies: 4
views: 227
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/51278-tsql"
---

# Tsql

## #1 — yohpops, 2002-08-26T07:47Z

:q 

Hej.

Jag har en fråga angående T-sql.

Går det på något sett att hämta ett värde från en stored procedure i en select sats?

Vi har en telefonbok på vårt intranät som hämtar data från våran telefonväxel som i grunden är en Microsoft SQL Server.

Det knepiga är att telefonnumrena inte är speciellt bra formaterade.
Det finns kortnummer och långa nummer med 2 nollor i början osv.
Jag har skapat en SP som fixar till numrena men jag kan inte komma på hur jag ska använda den i en vy.

Nån som vet?

Ex på vy.

SELECT DISTINCT 
sub.recID AS recid, sub.first_name + ' ' + sub.last_name AS Namn, sub.honorary, (exec fixanummer sub.primary_extension) AS telefon1, dep.name AS dep_name, 
sub.picture_resid AS Picture, cfemail.\[value\] AS email, cfmobil.\[value\] AS mobil, 
cfplats.\[value\] AS plats,
(SELECT divr.dna_description + ' ' + CONVERT(varchar(30), div.end_time, 120) AS Refers
FROMdiversion AS div, extension AS ext, divr AS divr
WHEREdiv.is_diverted_recID = ext.recID AND div.status = 1 AND ext.directory_number = sub.primary_extension AND 
 divr.nodeID = ext.nodeID AND divr.dna_reason_code = div.reason_code) AS refers
FROM dbo.subscriber sub INNER JOIN
dbo.department dep ON sub.main_department_recID = dep.recID LEFT OUTER JOIN
dbo.char_fields cfemail ON sub.udf7_recID = cfemail.recID LEFT OUTER JOIN
dbo.char_fields cfuserid ON sub.udf6_recID = cfuserid.recID LEFT OUTER JOIN
dbo.char_fields cfmobil ON sub.udf5_recID = cfmobil.recID LEFT OUTER JOIN
dbo.char_fields cfanstnr ON sub.udf4_recID = cfanstnr.recID LEFT OUTER JOIN
dbo.char_fields cfkostnad ON sub.udf3_recID = cfkostnad.recID LEFT OUTER JOIN
dbo.char_fields cfplats ON sub.udf2_recID = cfplats.recID LEFT OUTER JOIN
dbo.char_fields cforg ON sub.udf1_recID = cforg.recID LEFT OUTER JOIN
dbo.extension ext ON sub.recID = ext.primary_user_recID

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

## #2 — LarsG, 2002-08-26T08:13Z

Det går inte att anropa en procedur i en selectsats. Om du har MSSQL 2000 så kan du skriva en funktion istället.

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

## #3 — yohpops, 2002-08-26T08:14Z

Går det att använda en function på samma sätt som en vy då?

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

## #4 — LarsG, 2002-08-26T08:40Z

En funktion kan du använda var som helst i ett sql-statement.

```
create function fixanummer (@c varchar(30)) returns varchar(30)
as
...

select fixanummer(c) from t
```

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

## #5 — yohpops, 2002-08-26T08:41Z

Ok.

Tack för det.
 :birp

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/51278-tsql
