--创建实现自动增加收集号的函数
CREATE FUNCTION SJL_GETID()
RETURNS VARCHAR(20)
AS
BEGIN
RETURN (select convert(varchar(10,getdate(),112)+right('000'+ltrim(row_number()over(order by getdate())),2) from 收集蓝)
end
帮我看一下错误,或者帮我重新优化一下代码,我想实现日期+编号的函数,例如201207101,2012071202,2012071203……
CREATE FUNCTION SJL_GETID()
RETURNS VARCHAR(20)
AS
BEGIN
RETURN (select convert(varchar(10,getdate(),112)+right('000'+ltrim(row_number()over(order by getdate())),2) from 收集蓝)
end
帮我看一下错误,或者帮我重新优化一下代码,我想实现日期+编号的函数,例如201207101,2012071202,2012071203……
--不用函数 直接查 即可
select convert(varchar(10),getdate(),112)+right('000'+ltrim(row_number()over(order by getdate())),2) from 收集蓝
比如当前是05,而你删除了02的记录,那么下一条记录还是05。就会生成两条05的编号的记录这个01,-05建议你用自增列identity,这样就不会有这种问题,
只是如果你删除记录后会编号不连续
RETURNS VARCHAR(20)
AS
BEGIN
RETURN (select convert(varchar(10)--这里掉了半边括号
,getdate(),112)+right('000'+ltrim(row_number()over(order by getdate())),2) from 收集蓝)
end