ALTER PROCEDURE [dbo].[GSP_GR_MatchLoad]
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @startID INT
DECLARE @matchID INT
DECLARE @startdate DATETIME
DECLARE @matchNum INT
SET @startID=0
select @matchID=max(a.MatchNum) FROM (SELECT row_number()over(order by mi.MatchID) AS MatchNum,mi.MatchID ,mi.StartTime FROM AQPMatchDB.dbo.MatchInfo mi WHERE mi.StartTime<GETDATE())a
WHILE @startID<@matchID
BEGIN
select @matchID=a.MatchNum,@matchNum=a.MatchID FROM (SELECT row_number()over(order by mi.MatchID) AS MatchNum,mi.MatchID ,mi.StartTime FROM AQPMatchDB.dbo.MatchInfo mi WHERE mi.StartTime<GETDATE())a WHERE a.MatchNum=@startID
SELECT @startdate=dateadd(ss,datediff(second,'1970-01-01 08:00:00',GETDATE()) +
(mi.RepeatInterval-((datediff(second,'1970-01-01 08:00:00',GETDATE())
-datediff(second,'1970-01-01 08:00:00',mi.StartTime))%mi.RepeatInterval)),'1970-01-01 08:00:00')FROM AQPMatchDB.dbo.MatchInfo mi
WHERE mi.MatchID=@matchNum
UPDATE AQPMatchDB.dbo.MatchInfo SET StartTime =@startdate WHERE MatchID=@matchNum
SET @startID=@startID+1
END
SELECT * FROM dbo.MatchInfo mi
RETURN 0
END
mssql 时间变成字符串
最新推荐文章于 2024-07-19 02:25:25 发布