欧点?sqlfiddle.com的管理员-谢谢! DECLARE @DaysBack AS INT SET @DaysBack = -25 SET NOCOUNT ON; SELECT FileDate, MAX(FileName)
欧点?sqlfiddle.com的管理员-谢谢!欧点?sqlfiddle.com的管理员-谢谢! DECLARE @DaysBack AS INT SET @DaysBack = -25 SET NOCOUNT ON; SELECT FileDate, MAX(FileName) ,sql,sql-server,tsql,Sql,Sql Server,Tsql,欧点?sqlfiddle.com的管理员-谢谢! DECLARE @DaysBack AS INT SET @DaysBack = -25 SET NOCOUNT ON; SELECT FileDate, MAX(FileName) FROM ( SELECT CONVERT(VARCHAR(10),DATEADD(second,actiondate, CAST('1970-01-01 00:00:00' AS datetime)), 101) AS F
DECLARE @DaysBack AS INT
SET @DaysBack = -25
SET NOCOUNT ON;
SELECT FileDate, MAX(FileName) FROM (
SELECT
CONVERT(VARCHAR(10),DATEADD(second,actiondate, CAST('1970-01-01 00:00:00' AS datetime)), 101) AS FileDate
,'\\directory\' + filename AS FileName
FROM Tableq q
JOIN tablec c
on q.projectid = c.projectid
AND actiondate >= Datediff(s, '19700101 00:00:00:000',
Dateadd(DAY, @DaysBack, Getutcdate()))
) x
GROUP BY FileDate
ORDER BY FileDate
DECLARE @DaysBack AS INT
SET @DaysBack = -25
SET NOCOUNT ON;
SELECT
FileDate, FileName
FROM
(
SELECT
DATEADD(DAY, actiondate / 86400, '19700101') AS FileDate,
'\\\\directory\\' + filename AS FileName,
ROW_NUMBER() OVER (PARTITION BY actiondate / 86400 ORDER BY NEWID()) AS random_daily_id
FROM
Tableq q
JOIN
tablec c
ON q.projectid = c.projectid
AND actiondate >= Datediff(s, '19700101', Dateadd(DAY, @DaysBack, Getutcdate()))
) x
WHERE
random_daily_id <= 50
ORDER BY
FileDate
SELECT FileDate, MAX(FileName)
FROM (select x.*,
ROW_NUMBER() over (partition by FileDate order by newid()) as seqnum
from (SELECT CONVERT(VARCHAR(10),DATEADD(second,actiondate, CAST('1970-01-01 00:00:00' AS datetime)), 101
) AS FileDate,
'\\directory\' + filename AS FileName
FROM Tableq q JOIN
tablec c
on q.projectid = c.projectid and
actiondate >= Datediff(s, '19700101 00:00:00:000',
Dateadd(DAY, @DaysBack, Getutcdate()))
) x
) x
where seqnum <= 50
ORDER BY FileDate