SQLite
 sql >> डेटाबेस >  >> RDS >> SQLite

SQLite में एक निर्दिष्ट सीमा के भीतर एक यादृच्छिक संख्या कैसे उत्पन्न करें?

SQLite में, आप random() . का उपयोग कर सकते हैं छद्म यादृच्छिक संख्या उत्पन्न करने के लिए कार्य।

यह बहुत अच्छा है, लेकिन लौटाया गया मान -9223372036854775808 और +9223372036854775807 के बीच है।

क्या होगा यदि आपको 0 और 10 के बीच एक यादृच्छिक संख्या की आवश्यकता है? या कहें, 1 और 100?

सौभाग्य से आप random() . को मिलाकर ऐसा कर सकते हैं abs() . के साथ और मॉड्यूलो ऑपरेटर।

0 और 10 के बीच यादृच्छिक संख्या

0 और 10 के बीच एक छद्म यादृच्छिक संख्या उत्पन्न करने के लिए आप निम्न कोड का उपयोग कर सकते हैं।

SELECT abs(random() % 10);

यहां एक से अधिक यादृच्छिक मानों को चुनने का एक उदाहरण दिया गया है।

SELECT 
  abs(random() % 10) AS R1,
  abs(random() % 10) AS R2,
  abs(random() % 10) AS R3;

परिणाम:

R1          R2          R3        
----------  ----------  ----------
2           8           5         

सीमा बढ़ाएं

बेशक, आप अपनी पसंद की किसी भी चीज़ के लिए मान बदल सकते हैं (यह मानते हुए कि यह random() के भीतर है) संभावित मूल्यों की सीमा)।

यहां यह फिर से 0 और 100 के बीच बढ़ी हुई सीमा के साथ है।

SELECT 
  abs(random() % 100) AS R1,
  abs(random() % 100) AS R2,
  abs(random() % 100) AS R3;

परिणाम:

R1          R2          R3        
----------  ----------  ----------
76          60          85        

1 और 10 के बीच यादृच्छिक संख्या

यदि आप नहीं चाहते कि शून्य संभावित परिणामों का हिस्सा बने, तो आप निम्न विधि का उपयोग कर सकते हैं।

निम्नलिखित कोड 1 और 10 के बीच एक छद्म यादृच्छिक संख्या उत्पन्न करता है।

SELECT abs(random()) % (10 - 1) + 1;

यहां एक से अधिक यादृच्छिक मानों को चुनने का एक उदाहरण दिया गया है।

SELECT 
  abs(random()) % (10 - 1) + 1 AS R1,
  abs(random()) % (10 - 1) + 1 AS R2,
  abs(random()) % (10 - 1) + 1 AS R3;

परिणाम:

R1          R2          R3        
----------  ----------  ----------
2           1           8         

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLite इफ़नुल () कैसे काम करता है

  2. वर्टिकल आउटपुट का उपयोग करके SQLite क्वेरी परिणाम प्रदर्शित करें

  3. SQLite क्या है

  4. पहले से भरे हुए डेटाबेस को अपडेट करना

  5. जॉब शेड्यूलर के लिए Android- setPeriodic काम नहीं करेगा