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

मैं एसक्यूएल में यादृच्छिक संख्याओं के साथ कॉलम कैसे भर सकता हूं? मुझे हर पंक्ति में समान मूल्य मिलता है

इसके बजाय rand() , उपयोग करें newid() , जो परिणाम में प्रत्येक पंक्ति के लिए पुनर्गणना की जाती है। चेकसम के मॉड्यूलो का उपयोग करने का सामान्य तरीका है। ध्यान दें कि checksum(newid()) -2,147,483,648 उत्पन्न कर सकता है और abs() . पर पूर्णांक अतिप्रवाह का कारण बन सकता है , इसलिए हमें इसे निरपेक्ष मूल्य में बदलने से पहले चेकसम रिटर्न वैल्यू पर मॉड्यूलो का उपयोग करने की आवश्यकता है।

UPDATE CattleProds
SET    SheepTherapy = abs(checksum(NewId()) % 10000)
WHERE  SheepTherapy IS NULL

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में CXPACKET और CXCONSUMER प्रतीक्षा प्रकारों को नष्ट करना

  2. SQL सर्वर प्रबंधन स्टूडियो (SSMS) - SQL सर्वर / TSQL ट्यूटोरियल भाग 14 में एक साथ कई क्वेरी और परिणाम कैसे देखें

  3. मैं SQL सर्वर में एकल उद्धरण से कैसे बचूँ?

  4. SQL सर्वर (T-SQL) में मौजूदा तालिका में एक CHECK बाधा जोड़ें

  5. CTE कर्सर/व्युत्पन्न तालिका/उपश्रेणियों/अस्थायी तालिका आदि से बेहतर क्यों है?