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

MySQL में एक यादृच्छिक पंक्ति का चयन करें

<घंटा/>

यादृच्छिक पंक्ति का चयन करने के लिए, MySQL से LIMIT के साथ रैंड () का उपयोग करें। वाक्य रचना इस प्रकार है:

SELECT * FROM yourTableName ORDER BY RAND() LIMIT 1;

उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वेरी इस प्रकार है:

mysql> create table generateRandomRow
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> Name varchar(20),
   -> Age int,
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (1.66 sec)

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है:

mysql> insert into generateRandomRow(Name,Age) values('John',23);
Query OK, 1 row affected (0.22 sec)

mysql> insert into generateRandomRow(Name,Age) values('Larry',21);
Query OK, 1 row affected (0.32 sec)

mysql> insert into generateRandomRow(Name,Age) values('David',21);
Query OK, 1 row affected (0.39 sec)

mysql> insert into generateRandomRow(Name,Age) values('Carol',24);
Query OK, 1 row affected (0.21 sec)

mysql> insert into generateRandomRow(Name,Age) values('Bob',27);
Query OK, 1 row affected (0.14 sec)

mysql> insert into generateRandomRow(Name,Age) values('Mike',29);
Query OK, 1 row affected (0.19 sec)

mysql> insert into generateRandomRow(Name,Age) values('Sam',26);
Query OK, 1 row affected (0.17 sec)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है:

mysql> select *from generateRandomRow;

निम्न आउटपुट है:

+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
|  1 | John  |   23 |
|  2 | Larry |   21 |
|  3 | David |   21 |
|  4 | Carol |   24 |
|  5 | Bob   |   27 |
|  6 | Mike  |   29 |
|  7 | Sam   |   26 |
+----+-------+------+
7 rows in set (0.00 sec)

रैंड () का उपयोग करके तालिका से एक यादृच्छिक पंक्ति का चयन करने के लिए यहां क्वेरी है। क्वेरी इस प्रकार है:

mysql> select *from generateRandomRow order by rand() limit 1;

आउटपुट एक यादृच्छिक पंक्ति प्रदर्शित करता है:

+----+------+------+
| Id | Name | Age  |
+----+------+------+
| 5  | Bob  | 27   |
+----+------+------+
1 row in set (0.00 sec)

अब जब हम फिर से क्वेरी चलाएंगे, तो निम्न यादृच्छिक पंक्ति दिखाई देगी:

mysql> select *from generateRandomRow order by rand() limit 1;

निम्न आउटपुट है:

+----+------+------+
| Id | Name | Age  |
+----+------+------+
| 6  | Mike | 29   |
+----+------+------+
1 row in set (0.00 sec)

  1. एकाधिक घटनाओं (नाम) वाले यादृच्छिक पंक्ति मान (आईडी और नाम) का चयन करने के लिए MySQL क्वेरी?

    इसके लिए रैंडम रिकॉर्ड के लिए रैंड () का इस्तेमाल करें और LIMIT 1 केवल एक ही मूल्य प्राप्त करने के लिए। हालांकि, उस विशेष नाम का चयन करने के लिए WHERE क्लॉज का उपयोग करें, जो दोहरा रहा हो। आइए पहले एक टेबल बनाएं - mysql> create table DemoTable (    Id int NOT NULL AUTO_INCREMENT PRIMAR

  1. MySQL क्वेरी चयन कथन में पंक्ति अनुक्रमणिका (रैंक) उत्पन्न करने के लिए?

    पंक्ति अनुक्रमणिका उत्पन्न करने के लिए, ROW_NUMBER() का उपयोग करें। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable(Name varchar(40));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.49 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें (एडम); क्वेरी ठीक है, 1 पंक्ति प्रभावि

  1. MySQL में एक चयन क्वेरी के साथ सम्मिलित करें

    सेलेक्ट क्वेरी के साथ इन्सर्ट के लिए, सिंटैक्स इस प्रकार है - insert into yourTableName(yourColumnName1,yourColumnName2,yourColumnName3,...N) select yourValue1,yourValue2,yourValue3,......N; आइए पहले एक टेबल बनाएं - mysql> create table DemoTable1603    -> (    -> Studen