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

MySQL में ORDER BY RAND() के साथ समूहित रिकॉर्ड रखना

परिचय

MySQL में ORDER BY RAND() का उपयोग करके रैंडम क्रम में पंक्तियाँ प्राप्त की जा सकती हैं। यदि डुप्लिकेट मानों को एक साथ समूहित रखते हुए रैंडम क्रम चाहिए, तो एक्सप्रेशन RAND(कॉलम * स्थिरांक * RAND()) का उपयोग किया जा सकता है।

टेबल निर्माण और डेटा सम्मिलन

mysql> create table DemoTable (
    -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> StudentMarks int
    -> );
Query OK, 0 rows affected (0.58 sec)

mysql> insert into DemoTable(StudentMarks) values(98);
mysql> insert into DemoTable(StudentMarks) values(98);
mysql> insert into DemoTable(StudentMarks) values(78);
mysql> insert into DemoTable(StudentMarks) values(78);
mysql> insert into DemoTable(StudentMarks) values(45);
mysql> insert into DemoTable(StudentMarks) values(56);

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

mysql> select * from DemoTable;
+-----------+--------------+
| StudentId | StudentMarks |
+-----------+--------------+
| 1         | 98           |
| 2         | 98           |
| 3         | 78           |
| 4         | 78           |
| 5         | 45           |
| 6         | 56           |
+-----------+--------------+
6 rows in set (0.00 sec)

समूहित रैंडम क्रम के लिए क्वेरी

mysql> select * from DemoTable order by rand(StudentMarks*100*RAND());

आउटपुट (उदाहरण)

+-----------+--------------+
| StudentId | StudentMarks |
+-----------+--------------+
| 3         | 78           |
| 6         | 56           |
| 5         | 45           |
| 4         | 78           |
| 1         | 98           |
| 2         | 98           |
+-----------+--------------+
6 rows in set (0.00 sec)

व्याख्या

  • RAND(StudentMarks*100*RAND()) एक्सप्रेशन समान StudentMarks वाली पंक्तियों के लिए समान रैंडम मान उत्पन्न करता है, जिससे वे एक साथ रहती हैं।
  • यह तकनीक डेटा के समूहों को रैंडमाइज़ करते समय समूह की अखंडता बनाए रखती है।
  • नोट: RAND() के साथ सीड मान का उपयोग डिटरमिनिस्टिक रैंडमनेस देता है।
  1. - MySQL में GROUP BY HAVING से डुप्लिकेट कॉलम मान खोजें और प्रदर्शित करें

    किसी कॉलम में डुप्लिकेट मान (एक से अधिक बार आने वाले) खोजने के लिए GROUP BY और 1 का उपयोग करें। टेबल बनाएं mysql> CREATE TABLE DemoTable1858 (ModelNumber VARCHAR(50)); डेटा डालें mysql> INSERT INTO DemoTable1858 VALUES(Audi A4), (Audi A6), (Audi A4), (Audi Q5), (Audi R8), (Audi Q5); डुप्लि

  1. - MySQL में ORDER BY ASC के साथ NULL मानों को नीचे कैसे दिखाएं?

    MySQL में ORDER BY ASC डिफ़ॉल्ट रूप से NULL मानों को पहले रखता है। NULL मानों को अंत में (नीचे) रखते हुए आरोही क्रम बनाए रखने के लिए, CASE स्टेटमेंट या IS NULL चेक के साथ कस्टम सॉर्टिंग लागू करें। उदाहरण: NULL और खाली स्ट्रिंग को नीचे रखें डेमो टेबल बनाएं: mysql> CREATE TABLE DemoTable1937 (Na

  1. - C में rand() और srand()

    rand() फ़ंक्शन rand() का उपयोग छद्म यादृच्छिक संख्या उत्पन्न करने के लिए किया जाता है। यह एक इंटीजर मान लौटाता है और इसकी रेंज 0 से RAND_MAX तक होती है यानी 32767। यहां C भाषा में rand() का सिंटैक्स है: int rand(void); यहां C भाषा में rand() का एक उदाहरण है: उदाहरण #include <stdio.h> #inclu