Я пишу скалярную функцию в T-SQL. Функция должна вставлять начальные нули в поле ввода чисел, длина ввода может варьироваться по длине, т.е. 123, 1234567, 9876543210 и так далее.
Я не уверен, что правильно определил поля, поскольку я пытаюсь включить как входную переменную, так и выходную переменную, которая является новой для меня. Я пытаюсь вставить ведущие нули перед полем ввода и вернуть значение, введенное с ведущими нулями.
ALTER FUNCTION dbo.FN_ZeroPad
(
@FN_Input_No varchar(13)
)
RETURNS varchar(13)
AS
BEGIN
declare @FN_PadZero varchar (13),
@Return varchar (13)
Set @FN_PadZero = '0000000000000'
select @Return =
Case
When @FN_Input_No is null then 'Missing'
When @FN_Input_No < = 0 then '0000000000000'
When @FN_Input_No > 0 then (@FN_PadZero + @FN_Input_No)
else null End
RETURN @return
End