सबसे पहले, सभी 1 से MAX(id) तक एक यादृच्छिक मान उत्पन्न करते हैं, 100000000 नहीं।
फिर कम से कम कुछ अच्छे समाधान हैं:
-
>
का प्रयोग करें नहीं=
SELECT items FROM tablea where status='0' and id>'$id23' LIMIT 1
(status,id,items)
. पर एक इंडेक्स बनाएं इसे केवल अनुक्रमणिका क्वेरी बनाने के लिए। -
=
का प्रयोग करें , लेकिन यदि आपको कोई हिट नहीं मिलती है, तो बस एक भिन्न यादृच्छिक मान के साथ पुन:प्रयास करें। कभी-कभी इसमें कई प्रयास करने होंगे, लेकिन अक्सर इसमें केवल एक ही प्रयास करना होगा।=
तेज होना चाहिए क्योंकि यह प्राथमिक कुंजी का उपयोग कर सकता है। और अगर यह तेज़ है और इसे 90% बार एक बार में प्राप्त कर लेता है, तो यह अन्य 10% समय के लिए बना सकता है जब इसे एक से अधिक बार प्रयास करना पड़ता है। इस पर निर्भर करता है कि आपके आईडी मानों में कितने अंतराल हैं।