我正在尝试创建一个函数。该功能将接收两个参数&我希望它能返回一个字符串。
例如
Paramter 1 Parameter 2
@CurrName @Currency
SEP17 3600 CALL GBP
AUG17 4000 CALL EUR
所以我的函数将采用两个参数,请注意参数1 @CurrName将始终为3个字母(月份)和2个数字,我们不关心。
所以我想如果@FX是GBP将字符串的开头返回为“UKX”,如果是EUR,那么“SXE5”
我想要的输出是这样的
1st one -> UKX 9 3600
2nd one -) SXE5 8 4000
但是我遇到第一位的麻烦,因为它似乎不喜欢我已经声明变量@tickStart的事实,“函数中包含的select语句不能将数据返回给客户端”。
CREATE FUNCTION ufOptionName
(
-- Add the parameters for the function here
@CurrName nvarchar(30),
@FX nvarchar(3)
)
RETURNS nvarchar(30)
AS
BEGIN
-- Declare the return variable here
DECLARE @newName nvarchar(30),
@tickStart nvarchar(10)
select case
when @FX = 'EUR' then set @tickStart = 'SX5E'
when @FX = 'GBP' then set @tickStart = 'UKX'
else set @tickStart = 'US'
end
-- Return the result of the function
RETURN @newName
END
GO
答案 0 :(得分:1)
使用此:
SET @tickStart = case
when @FX = 'EUR' then 'SX5E'
when @FX = 'GBP' then 'UKX'
else 'US'
end