आज, मैं वर्णन करने जा रहा हूं कि किसी दी गई सीमा के भीतर DATETIME फ़ील्ड के लिए यादृच्छिक मान कैसे उत्पन्न किया जाए। यह विशेष रूप से परीक्षण डेटा उत्पन्न करने के लिए बहुत उपयोगी है। इसके लिए, हम कुछ अंतर्निहित कार्यों का उपयोग करेंगे जैसे:
- DATEDIFF
- DATEADD
- रैंड
- राउंड
यादृच्छिक DATETIME मान
DECLARE @startDate DATETIME -- start date
DECLARE @endDate DATETIME -- end date
DECLARE @noOfSec INT -- variable
DECLARE @randomSec INT -- variable
SET @startDate = '2021-06-27 08:00 AM' -- assigning starting date
SET @endDate = '2021-06-27 08:30 AM' -- assigning end date
-- assigning end date -- Get the number of seconds within the date range
set @noOfSec = DATEDIFF(SECOND, @startDate, @endDate)
-- Get random seconds within the date range
set @randomSec = ROUND(((@noOfSec-1) * RAND()), 0)
-- Add the random seconds to get the random datetime value within the daterange
SELECT DATEADD(SECOND, @randomSec, @startDate)
आशा है यह आपके लिए उपयोगी होगा। हैप्पी टीएसक्यूएलिंग!
यह पहली बार यहां प्रकाशित हुआ है