मारियाडीबी में एक तालिका से यादृच्छिक पंक्तियों को वापस करने का एक त्वरित तरीका यहां दिया गया है।
मान लीजिए कि हमारे पास Pets
नामक एक टेबल है निम्नलिखित डेटा के साथ:
SELECT
PetId,
PetName
FROM Pets;
परिणाम:
+-------+---------+ | PetId | PetName | +-------+---------+ | 1 | Fluffy | | 2 | Fetch | | 3 | Scratch | | 4 | Wag | | 5 | Tweet | | 6 | Fluffy | | 7 | Bark | | 8 | Meow | +-------+---------+
हम RAND()
. का उपयोग कर सकते हैं ORDER BY
. के संयोजन में कार्य करता है खंड और LIMIT
उस तालिका से यादृच्छिक पंक्तियों को वापस करने के लिए कीवर्ड।
उदाहरण:
SELECT
PetId,
PetName
FROM Pets
ORDER BY RAND()
LIMIT 5;
उदाहरण परिणाम:
+-------+---------+ | PetId | PetName | +-------+---------+ | 5 | Tweet | | 7 | Bark | | 1 | Fluffy | | 8 | Meow | | 3 | Scratch | +-------+---------+
और अगर मैं इसे फिर से चलाता हूं, तो मुझे यह मिलता है:
+-------+---------+ | PetId | PetName | +-------+---------+ | 3 | Scratch | | 8 | Meow | | 4 | Wag | | 7 | Bark | | 6 | Fluffy | +-------+---------+
और इसी तरह…
ध्यान रखें कि यह काफी गहन है, और इसे बड़े टेबल पर इस्तेमाल नहीं किया जाना चाहिए।
इस तकनीक का उपयोग करते समय, MariaDB तालिका में सभी पंक्तियों को पढ़ता है, उनमें से प्रत्येक के लिए एक यादृच्छिक मान उत्पन्न करता है, उन्हें आदेश देता है, और अंत में LIMIT
लागू करता है। खंड। इसके परिणामस्वरूप बड़ी तालिकाओं पर बहुत धीमी क्वेरी होगी।
डेटा नमूनाकरण देखें:बड़ी तालिकाओं के लिए अधिक उपयुक्त तकनीकों के लिए मारियाडीबी वेबसाइट पर एक यादृच्छिक पंक्ति को कुशलतापूर्वक खोजने के लिए तकनीकें देखें।