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

PHP/MySQL में अद्वितीय कोड उत्पन्न करना?

यदि आपको लगभग 10 मिलियन अद्वितीय कुंजियों की आवश्यकता है (उदाहरण के लिए), तो सबसे अच्छा तरीका एक कुंजी-स्थान चुनना है जो तेजी से बड़ा हो, और बेतरतीब ढंग से उत्पन्न करना शुरू करें। जन्मदिन विरोधाभास के बारे में पढ़ें - यह मुख्य बात है जिसके बारे में आपको चिंतित होना चाहिए। यदि आप 2^n अद्वितीय और सुरक्षित कुंजी चाहते हैं, तो सुनिश्चित करें कि कम से कम 2^(2 * n) संभावित मान हैं। यहाँ एक मोटा O(n log n) एल्गोरिथम है:

  • कम से कम 2^50 के एक प्रमुख स्थान का उपयोग करें (इसलिए, दूसरे शब्दों में, 2^50 संभावित अद्वितीय मानों की अनुमति दें), और आपके पूरे डेटासेट में मुश्किल से कोई टकराव होगा - और आपकी चाबियों को मजबूर करने वाला कोई भी व्यक्ति होगा यदि वे उनमें से 2^25 को आजमाते हैं, तो उनके पास एक कुंजी प्राप्त करने की संभावना समान होती है।
  • जितनी चाहें उतनी यादृच्छिक संख्याएं उत्पन्न करें
  • डेटाबेस को अपनी कुंजी पर अनुक्रमित करें (यह O(n lg n) चरण है:सॉर्ट करें)
  • डीबी के माध्यम से पृष्ठ और डुप्लिकेट को ट्रिम करने के लिए पूरे डेटा सेट पर पुनरावृति (नीचे छद्म कोड)
  • डुप्लिकेट पंक्तियां हटाएं, और आपका काम हो गया।

स्यूडोकोड:

$last = null;
while ($current = getnext()) {
    if ($last == $current) {
        push($toDelete, $current);
    }
    $last = $current;
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:कॉलम में एकाधिक आईडी होने पर बाएं-जुड़ने के साथ डेटा कैसे प्राप्त करें?

  2. शब्दों का सबसे अधिक इस्तेमाल किया जाने वाला सेट निर्धारित करना php mysql

  3. MySQL में एक स्ट्रिंग और एक संख्या को संयोजित करें

  4. क्या MySQL तालिका वंशानुक्रम का समर्थन करता है?

  5. लगातार x दिनों के लिए जाँच करें - डेटाबेस में दिए गए टाइमस्टैम्प