除了最后这行:
set @out_msg='恭喜您’
的最后一个引号是中文引号外,代码没问题.把'恭喜您’改为'恭喜您'后测试正常:
declare @i_cnt varchar(20), @chr_last varchar(10),@chr_sec varchar(10),@chr_thd varchar(10)
set @i_cnt = '455666'set @chr_last=substring(@i_cnt,len(@i_cnt),1)  --right(@i_cnt,1)
set @chr_sec=substring(@i_cnt,len(@i_cnt)-1,2) --right(@i_cnt,2)
set @chr_thd=substring(@i_cnt,len(@i_cnt)-2,3) --right(@i_cnt,3)
                    
if @chr_thd in('666','888','999')
BEGIN
    print '你好'
END
else 
if @chr_sec in('66','88','99')
BEGIN
    print '谢谢'
END
else 
if @chr_last in('8')
BEGIN 
    print '恭喜您'
END