2011-10-02 257 views
2

設置一個參數我想設置在select語句中的參數,然後將它傳遞給用戶定義的函數在相同的語句。這可能嗎?如果是,我的錯誤在哪裏?如果不是,那麼我想我將不得不寫一個遊標和一些我想避免的臨時表。在SELECT語句

declare @param varchar(1000) 
select Pincode, Name,(@param = AlternateName) as AlternateName 
,(select Top(1) part from SDF_SplitString (@param,',')) as NewName from PinCodeTable 
+0

我想出了一個方法來實現我想要的。基本上我想使用用戶定義函數中的AlternateName列,我可以通過使用列名而不是使用參數來實現。我之前遇到的這個問題是由於一個錯字。我該怎麼處理這個問題?關閉它?請告知 – shashi

+0

你可以回答你自己的問題。 BTDT。 – HABO

回答

2

您可以得到場所有出來作爲變量,或得到普通組行,但你不能在一個SELECT混搭。變量僅限於返回不超過一行的查詢。 (?爲什麼我覺得我要學習的東西可怕)

如果你正在寫一個存儲過程,並做一些像頭/拖車行集,您可以隨時返回從變量建行集:

SELECT @Foo = Foo, @Bar = Bar, ... from Headers where Id = 42 
SELECT @Foo as Foo -- Return the first rowset. 
SELECT Size, Weight, Color from Trailers where Bar = @Bar -- Return second rowset. 
+0

這實際上回答了我問的問題,因此將其標記爲答案。 – shashi