Microsoft SQL Server

SQL Server : random date in specific range (including random hours, minutes,…)

DECLARE @FromDate DATETIME = DATEADD(DAY, -10, GETDATE())
DECLARE @ToDate DATETIME = DATEADD(DAY, -12, GETDATE())

DECLARE @Seconds INT = DATEDIFF(SECOND, @FromDate, @ToDate)
DECLARE @Random INT = ROUND(((@Seconds-1) * RAND()), 0)
DECLARE @Milliseconds INT = ROUND((999 * RAND()), 0)

declare @newDate datetime = DATEADD(MILLISECOND, @Milliseconds, DATEADD(SECOND, @Random, @FromDate))

select @newDate

Published by

tuanitpro

Tôi là Lê Thanh Tuấn, và tôi chia sẻ những điều mình cho rằng nó là thú vị, hay giúp ích cho bạn!

Leave a Reply