如何在数据库中让商品的编号按照g000001这样累加呢?

如何在数据库中让商品的编号按照g000001这样累加呢?麻烦各位高手指点下。谢谢了。比如:

第一个商品是:g00001

第二个商品是:g00002

…………

也许你会说这样不好,但是没办法,这样是为你有些地方的好。

慕少森
浏览 870回答 1
1回答

波斯汪

在程序里面可以做处理, 先截取前缀,再将后面的数字加一,再和前缀连在一起。 在数据库里面可以创建个函数: Create FUNCTION [dbo].[GetMaxCode](@Prefix nvarchar(1) )RETURNS nvarchar(6)ASBEGIN -- Declare the return variable here DECLARE @Code nvarchar(6) DECLARE @currentValue int  select @Code=Max(Code) from t_demo  if(@Code='' or @Code is null)  Set @Code=@Prefix+'00001'   set @Code=substring(@Code,2,5) set @currentValue=cast(@code as int) SET @currentValue= @currentValue+1  if(@currentValue<10)  set @Code=@Prefix+'0000' else  set @Code=@Prefix+'000'   set @Code=@Code+cast(@currentValue as nvarchar(5))  RETURN @Code END   调用 :select dbo.GetMaxCode('p')
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server