я есть процедуры сохранения генерировать код купона, где я прохожу префикс купона кодConfuse при генерации кода купона
CREATE PROCEDURE [dbo].[spCouponCode1]
@Prefix varchar(50),
@Lenght varchar(50)
AS
Begin
declare @maxID as bigint=0
declare @PrefixLenght as bigint=0
set @PrefixLenght=LEN(@Prefix)
select @maxID = isnull(max(substring(CouponCode,@PrefixLenght+1,@[email protected])),0) + 1 from Coupon where CouponCode Like @Prefix + '%'
select @Prefix + cast(@maxID as VARchar(100))
end
она работает идеально проблема заключается в том, что если в купоне таблице есть код купона, как " FIRST0001 'и' FIRSTNEW001 ' здесь я получаю ошибку - varchar to int conversion failed из-за попытки разобрать «NEW001» на int, чтобы найти максимальное значение можно ли анализировать этот «NEW001» на int, игнорируя стартовые символы
Тег dbms used! (Не похож на ANSI SQL ...) – jarlh
выглядит как хранимая процедура oracle для меня, но не уверен –
Я делаю это в MS SQL 2008 –