Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL स्टोर्ड प्रोसीजर में 5 रैंडम नंबर कैसे जनरेट करें?

MySQL स्टोर्ड प्रोसीजर में ORDER BY RAND() का उपयोग करके रैंडम नंबर जनरेट करना

MySQL में रैंडम नंबर जनरेट करने के लिए ORDER BY RAND() फ़ंक्शन का उपयोग किया जाता है। यहाँ हम एक स्टोर्ड प्रोसीजर बनाकर 5 रैंडम नंबर जनरेट करेंगे।

उदाहरण के साथ पूर्ण कार्यान्वयन

आइए पहले एक टेबल बनाते हैं:

mysql> CREATE TABLE DemoTable (Value INT);

रिकॉर्ड डालना

mysql> INSERT INTO DemoTable VALUES(89), (98), (10), (78), (75), (76), (74), (99), (101);

सभी रिकॉर्ड प्रदर्शित करना

mysql> SELECT * FROM DemoTable;

आउटपुट:

+-------+
| Value |
+-------+
| 89    |
| 98    |
| 10    |
| 78    |
| 75    |
| 76    |
| 74    |
| 99    |
| 101   |
+-------+
9 rows in set (0.00 sec)

5 रैंडम नंबर जनरेट करने के लिए स्टोर्ड प्रोसीजर

mysql> DELIMITER //
mysql> CREATE PROCEDURE generate_Random5Numbers()
BEGIN
    SELECT GROUP_CONCAT(Value SEPARATOR '/')
    FROM (
        SELECT Value
        FROM (
            SELECT Value
            FROM DemoTable
            WHERE Value BETWEEN 10 AND 100
            ORDER BY RAND()
            LIMIT 5
        ) Ascending_Order
        ORDER BY Value
    ) 5Values;
END //
mysql> DELIMITER ;

स्टोर्ड प्रोसीजर कॉल करना

mysql> CALL generate_Random5Numbers();

आउटपुट:

+-----------------------------------+
| GROUP_CONCAT(Value SEPARATOR '/') |
+-----------------------------------+
| 89/74/78/99/10                    |
+-----------------------------------+
1 row in set (0.00 sec)

मुख्य बिंदु:

  • ORDER BY RAND() पंक्तियों को यादृच्छिक क्रम में व्यवस्थित करता है
  • LIMIT 5 केवल 5 पंक्तियाँ चुनता है
  • GROUP_CONCAT परिणाम को '/' सेपरेटर के साथ जोड़ता है
  • उपक्वेरी (subquery) का उपयोग करके परिणाम को आरोही क्रम में व्यवस्थित किया गया है
  1. - MySQL में 6-अंकीय रैंडम नंबर कैसे जनरेट करें?

    आप 6-अंकीय रैंडम नंबर जनरेट करने के लिए LPAD() के साथ rand() और floor() का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable    (    Value int    ); Query OK, 0 rows affected (0.64 sec) इन्सर्ट कमांड का उपयोग करके टेबल में रिकॉर्ड डालें: my

  1. - MySQL स्टोर्ड प्रोसीजर में शर्तों (IF-ELSE) को सही तरीके से कैसे लागू करें?

    MySQL स्टोर्ड प्रोसीजर में सशर्त तर्क (Conditional Logic) लागू करने के लिए IF-THEN-ELSE स्टेटमेंट का उपयोग किया जाता है। सही सिंटैक्स और डिलिमिटर का ध्यान रखना महत्वपूर्ण है। सही सिंटैक्स DELIMITER // CREATE PROCEDURE procedure_name(IN param_name INT) BEGIN IF condition THEN statement1;

  1. - MySQL स्टोर्ड प्रोसीजर में DELIMITER का सही उपयोग कैसे करें?

    MySQL स्टोर्ड प्रोसीजर बनाते समय DELIMITER का सही उपयोग आवश्यक है क्योंकि प्रोसीजर बॉडी में सेमीकॉलन (;) होते हैं जो डिफ़ॉल्ट स्टेटमेंट टर्मिनेटर हैं। सही सिंटैक्स DELIMITER // CREATE PROCEDURE procedure_name() BEGIN IF condition THEN statement1; ELSE statement2; END IF;