I am populating my databae with dummy information for testing purposes, thanks to http://ift.tt/2arPDUZ And it is working, however my date is randomized and get random years/months but allways the current time, a few examples exctracted from my database:
2017-05-30 16:41:53.190
2017-07-21 16:41:53.193
2016-04-23 16:41:53.193
however my application using these dates must have them in the form of
2017-05-30 16:00:00.000
2017-07-21 01:30:00.000
2016-04-23 04:45:00.000
In other words the date is currently fine, but the minute should be on of 00,15,30,45 and seconds and miliseconds should allways be 00.
Any way to add random times on the format above to my sql?
My current SQL logic is as follows:
DECLARE @RowCount INT
DECLARE @RowString VARCHAR(10)
DECLARE @Random INT
DECLARE @Upper INT
DECLARE @Lower INT
DECLARE @InsertDate DATETIME
DECLAre @LoopThisManyTimes INT
SET @Lower = -360 /* move 360 days backwards */
SET @Upper = 360 /* move 360 days forward */
SET @RowCount = 0 /* start the counter at 0 */
SET @LoopThisManyTimes = 10 /* set the number of posts to add */
USE [Scheduler]
TRUNCATE TABLE [dbo].[Appointments] /* clear table for testing purposes */
WHILE @RowCount < @LoopThisManyTimes /*loop and add to table */
BEGIN
SET @RowString = CAST(@RowCount AS VARCHAR(10))
SELECT @Random = ROUND(((@Upper - @Lower -1) * RAND() + @Lower), 0)
SET @InsertDate = DATEADD(dd, @Random, GETDATE())
Aucun commentaire:
Enregistrer un commentaire