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

यादृच्छिक int मान 3 से 6 . उत्पन्न करें

एक सहायक संपादक ने प्रत्येक कथन से पहले 'चयन करें' जोड़ा लेकिन इस आइटम की बात यह है कि यह केवल एक आइटम नहीं, बल्कि प्रत्येक पंक्ति के लिए अद्वितीय कुंजी उत्पन्न कर सकता है (इसके लिए मैं रैंड () फ़ंक्शन)। उदाहरण के लिए :TblExample से शीर्ष 100 रैंड (),* चुनें

सभी 100 पंक्तियों के लिए समान यादृच्छिक मान लौटाएगा।

जबकि:tblexample

से टॉप 100 ABS(CHECKSUM(NEWID())% 10),* चुनें

रिटर्न में प्रत्येक पंक्ति पर 0 और 9 के बीच एक अलग यादृच्छिक मान लौटाएगा। इसलिए जब चयन कॉपी और पेस्ट करना आसान बनाता है, तो आप तर्क को एक चयन कथन में कॉपी कर सकते हैं यदि इसकी आवश्यकता है।

यह 0-9 के बीच एक यादृच्छिक संख्या उत्पन्न करता है

SELECT ABS(CHECKSUM(NEWID()) % 10)

1 से 6

SELECT ABS(CHECKSUM(NEWID()) % 6) + 1

3 से 6

SELECT ABS(CHECKSUM(NEWID()) % 4) + 3

डायनामिक (एइलर्ट हेजेल्मेसेथ्स कमेंट पर आधारित, बग को ठीक करने के लिए अपडेट किया गया (+ से -))

SELECT ABS(CHECKSUM(NEWID()) % (@max - @min - 1)) + @min

टिप्पणियों के आधार पर अपडेट किया गया:

  • NEWID यादृच्छिक स्ट्रिंग उत्पन्न करता है (बदले में प्रत्येक पंक्ति के लिए)
  • CHECKSUM स्ट्रिंग का मान लेता है और नंबर बनाता है
  • मापांक (% ) उस संख्या से भाग देता है और शेष देता है (मतलब अधिकतम मान आपके द्वारा उपयोग की जाने वाली संख्या से एक कम है)
  • ABS नकारात्मक परिणामों को सकारात्मक में बदलता है
  • फिर 0 परिणामों को समाप्त करने के लिए परिणाम में एक जोड़ें (एक पासा रोल अनुकरण करने के लिए)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. टी-एसक्यूएल:सभी डुप्लिकेट पंक्तियों को हटाना लेकिन एक रखना

  2. प्रत्येक कॉलम के लिए वर्चर (MAX) का उपयोग किए जाने के बावजूद CSV फ़ाइल आयात करते समय SQL सर्वर में त्रुटियाँ

  3. उपलब्धता समूहों पर हमेशा SQL सर्वर की निगरानी करने के विभिन्न तरीके

  4. UTF8 स्ट्रिंग के MD5 हैश की गणना करें

  5. शून्य या शून्य मानों को अनदेखा करते हुए AVG प्राप्त करें