如题:
declare @OrderNo varchar(20)='abcde-2';
select substring(@OrderNo,len(@OrderNo)-1,1)
说明:
substring('原始字符串' , 从第几个index开始取 , 取几个字符)
例子:
--截取订单号字符串
CREATE FUNCTION [dbo].[FormatOrderNo]
(
@OrderNo varchar(100)
)
returns varchar(100)
AS
BEGIN
declare @return varchar(100);
declare @a varchar(100);
declare @b varchar(100);
set @a=substring(@OrderNo,len(@OrderNo)-1,1);--1位数
set @b=substring(@OrderNo,len(@OrderNo)-2,1);--2位数
if(@a='-')
set @return=substring(@OrderNo,0,len(@OrderNo)-1);
else if(@b='-')
set @return=substring(@OrderNo,0,len(@OrderNo)-2);
else
set @return=@OrderNo;
return @return
END
GO
调用此函数:
declare @OrderNo varchar(20)='abcde-2';
select [dbo].[FormatOrderNo](@OrderNo)