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

MySQL में प्रत्येक कॉलम मान के लिए निश्चित कैरेक्टर लंबाई वाले तीन रैंडम रिकॉर्ड चुनना

इसके लिए CHAR_LENGTH() का उपयोग करें। रैंडम रिकॉर्ड के लिए RAND() का उपयोग करें।

उदाहरण

टेबल बनाएं:

mysql> create table DemoTable (Subject text);
Query OK, 0 rows affected (0.61 sec)

रिकॉर्ड डालें:

mysql> insert into DemoTable values('C');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('MySQL');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('Java');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('MongoDB');
Query OK, 1 row affected (0.59 sec)
mysql> insert into DemoTable values('RubyOnRails');
Query OK, 1 row affected (0.25 sec)
mysql> insert into DemoTable values('C++');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values('Python');
Query OK, 1 row affected (0.20 sec)

सभी रिकॉर्ड देखें:

mysql> select * from DemoTable;

आउटपुट

+-------------+
| Subject     |
+-------------+
| C           |
| MySQL       |
| Java        |
| MongoDB     |
| RubyOnRails |
| C++         |
| Python      |
+-------------+
7 rows in set (0.00 sec)

प्रत्येक के लिए निश्चित कैरेक्टर लंबाई वाले 3 रैंडम रिकॉर्ड चुनने की क्वेरी:

mysql> select * from (select * from DemoTable WHERE CHAR_LENGTH(Subject) = 7 ORDER BY RAND() LIMIT 1) tbl
UNION
(select * from DemoTable WHERE CHAR_LENGTH(Subject) = 11 ORDER BY RAND() LIMIT 1)
UNION
(select * from DemoTable WHERE CHAR_LENGTH(Subject) = 5 ORDER BY RAND() LIMIT 1);

आउटपुट

+-------------+
| Subject     |
+-------------+
| MongoDB     |
| RubyOnRails |
| MySQL       |
+-------------+
3 rows in set (0.04 sec)

नोट: CHAR_LENGTH() कैरेक्टर्स गिनता है, LENGTH() बाइट्स। UNION डुप्लिकेट हटाता है।

  1. - MySQL तालिका में प्रत्येक मान के लिए अधिकतम (MAX) कैसे चुनें?

    MySQL में GROUP BY और MAX() का उपयोग करके प्रत्येक समूह (जैसे देश) के लिए अधिकतम मान (जैसे जनसंख्या) प्राप्त किया जा सकता है। उदाहरण देश जनसंख्या तालिका: mysql> CREATE TABLE DemoTable (CountryName VARCHAR(20), Population INT); mysql> INSERT INTO DemoTable VALUES (US, 560), (UK, 10090), (UK, 8

  1. - MySQL में पहले तीन पंक्तियों के लिए कस्टम मान सेट करना

    ORDER BY और LIMIT से पहली N पंक्तियां अपडेट करें पहली तीन पंक्तियों के लिए एक विशिष्ट मान सेट करने के लिए ORDER BY और LIMIT 3 का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1968 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(20) ); Query OK, 0 rows affected (0.0

  1. - MySQL REGEXP: विशिष्ट संख्या से शुरू होने वाले स्ट्रिंग+नंबर रिकॉर्ड प्राप्त करें

    REGEXP पैटर्न Select yourColumnName1, yourColumnName2 from yourTableName where yourColumnName2 REGEXP ^yourStringValue[yourNumericValue]; उदाहरण: John से शुरू और फिर 5 या 6 insert into demo45(value) values(John500), (John1500), (John5500), (John6500), (John8600); क्वेरी: ^John[56] select id,val