UFN_MKTSMARTFIELD_LOYALTY_2
Return
Return Type |
---|
nvarchar(50) |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@year1 | int | IN | |
@year2 | int | IN | |
@year3 | int | IN | |
@year4 | int | IN | |
@year5 | int | IN | |
@year6 | int | IN | |
@year7 | int | IN | |
@year8 | int | IN | |
@year9 | int | IN | |
@year10 | int | IN | |
@older | int | IN |
Definition
Copy
CREATE function dbo.UFN_MKTSMARTFIELD_LOYALTY_2
(
@year1 int,
@year2 int,
@year3 int,
@year4 int,
@year5 int,
@year6 int,
@year7 int,
@year8 int,
@year9 int,
@year10 int,
@older int = 0
)
returns nvarchar(50)
as begin
declare @ret nvarchar(50);
set @ret =
case when (@year1>0 and (@year2+@year3+@year4+@year5+@year6+@year7+@year8+@year9+@year10+@older)=0) then 'New'
-- multis
when (@year1>0 and @year2>0 and @year3>0 and @year4>0 and @year5>0 and @year6>0 and @year7>0 and @year8>0 and @year9>0 and @year10>0) then 'Multi (10+ years)'
when (@year1>0 and @year2>0 and @year3>0 and @year4>0 and @year5>0 and @year6>0 and @year7>0 and @year8>0 and @year9>0 and @year10=0) then 'Multi (9 years)'
when (@year1>0 and @year2>0 and @year3>0 and @year4>0 and @year5>0 and @year6>0 and @year7>0 and @year8>0 and @year9=0) then 'Multi (8 years)'
when (@year1>0 and @year2>0 and @year3>0 and @year4>0 and @year5>0 and @year6>0 and @year7>0 and @year8=0) then 'Multi (7 years)'
when (@year1>0 and @year2>0 and @year3>0 and @year4>0 and @year5>0 and @year6>0 and @year7=0) then 'Multi (6 years)'
when (@year1>0 and @year2>0 and @year3>0 and @year4>0 and @year5>0 and @year6=0) then 'Multi (5 years)'
when (@year1>0 and @year2>0 and @year3>0 and @year4>0 and @year5=0) then 'Multi (4 years)'
when (@year1>0 and @year2>0 and @year3>0 and @year4=0) then 'Multi (3 years)'
when (@year1>0 and @year2>0 and @year3=0) then 'Multi (2 years)'
-- reactivated
when (@year1>0 and @year2=0 and (@year3+@year4+@year5+@year6+@year7+@year8+@year9+@year10+@older)>0) then 'Reactivated'
-- lapsed
when (@year1=0 and @year2>0 and (@year3+@year4+@year5+@year6+@year7+@year8+@year9+@year10)=0) then 'Lapsed (1yr-New)'
when (@year1=0 and @year2>0 and (@year3+@year4+@year5+@year6+@year7+@year8+@year9+@year10)>0) then 'Lapsed (1yr)'
when (@year1=0 and @year2=0 and @year3>0) then 'Lapsed (2yr)'
when (@year1=0 and @year2=0 and @year3=0 and @year4>0) then 'Lapsed (3yr)'
when (@year1=0 and @year2=0 and @year3=0 and @year4=0 and @year5>0) then 'Lapsed (4yr)'
when (@year1=0 and @year2=0 and @year3=0 and @year4=0 and @year5=0 and @year6>0) then 'Lapsed (5yr)'
when (@year1=0 and @year2=0 and @year3=0 and @year4=0 and @year5=0 and @year6=0 and @year7>0) then 'Lapsed (6yr)'
when (@year1=0 and @year2=0 and @year3=0 and @year4=0 and @year5=0 and @year6=0 and @year7=0 and @year8>0) then 'Lapsed (7yr)'
when (@year1=0 and @year2=0 and @year3=0 and @year4=0 and @year5=0 and @year6=0 and @year7=0 and @year8=0 and @year9>0) then 'Lapsed (8yr)'
when (@year1=0 and @year2=0 and @year3=0 and @year4=0 and @year5=0 and @year6=0 and @year7=0 and @year8=0 and @year9=0 and @year10>0) then 'Lapsed (9 yr)'
when (@year1=0 and @year2=0 and @year3=0 and @year4=0 and @year5=0 and @year6=0 and @year7=0 and @year8=0 and @year9=0 and @year10=0 and @older>0) then 'Lapsed (10+ yr)'
-- non- donors
when (@year1=0 and @year2=0 and @year3=0 and @year4=0 and @year5=0 and @year6=0 and @year7=0 and @year8=0 and @year9=0 and @year10=0 and @older=0) then 'Non-donor'
else 'N/A' end;
return @ret;
end;