declare @VI_OPERID as varchar(20)
set @VI_OPERID='10530486434'
select case when len(@VI_OPERID)-9>=0 THEN len(@VI_OPERID)-9 WHEN len(@VI_OPERID)-9<0 THEN 0就是想如果len(@VI_OPERID)-9大于等于零就取len(@VI_OPERID)-9,反之就取0,一简单的逻辑半天搞不定,
max函数只有一个参数,iif函数用不了,网上查用case when,死活语法错误,唉,没学过SQL就是不行。
我用的sql2005,请知道的吭一声
set @VI_OPERID='10530486434'
select case when len(@VI_OPERID)-9>=0 THEN len(@VI_OPERID)-9 WHEN len(@VI_OPERID)-9<0 THEN 0就是想如果len(@VI_OPERID)-9大于等于零就取len(@VI_OPERID)-9,反之就取0,一简单的逻辑半天搞不定,
max函数只有一个参数,iif函数用不了,网上查用case when,死活语法错误,唉,没学过SQL就是不行。
我用的sql2005,请知道的吭一声
set @VI_OPERID='10530486434'
select case when len(@VI_OPERID)-9>=0 THEN len(@VI_OPERID)-9
WHEN len(@VI_OPERID)-9<0 THEN 0 END cc ---少了end
set @VI_OPERID='10530486434'
select case when len(@VI_OPERID)-9>=0 THEN len(@VI_OPERID)-9 WHEN len(@VI_OPERID)-9<0 THEN 0 end或者:declare @VI_OPERID as varchar(20)
set @VI_OPERID='10530486434'
select case when len(@VI_OPERID)-9>=0 THEN len(@VI_OPERID)-9 else 0 end