日期:2014-05-18  浏览次数:20677 次

帮忙找一下代码中的错误——创建实现自动增加收集号的函数
--创建实现自动增加收集号的函数
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……

------解决方案--------------------
SQL code

--不用函数 直接查 即可
select convert(varchar(10),getdate(),112)+right('000'+ltrim(row_number()over(order by getdate())),2) from 收集蓝

------解决方案--------------------
但是你这样只能获得今天的日期+编号。这是你想要的么

select CONVERT(varchar,getdate(),112)+RIGHT('000'+LTRIM(row_number() over (order by getdate())),2) from t_a
------解决方案--------------------
SQL code
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