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

MySQL ORDER BY कस्टम फील्ड मान के साथ

कस्टम फील्ड मान सेट करने के लिए, FIND_IN_SET() का उपयोग करें। पहले एक टेबल बनाते हैं:

mysql> create table DemoTable677( UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY, UserStatus text ); Query OK, 0 rows affected (1.07 sec)

इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें:

mysql> insert into DemoTable677(UserStatus) values('BUSY'); Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable677(UserStatus) values('AT WORK'); Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable677(UserStatus) values('OFFLINE'); Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable677(UserStatus) values('BLOCKED'); Query OK, 1 row affected (0.17 sec)

सेलेक्ट स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें:

mysql> select *from DemoTable677;

यह निम्न आउटपुट देगा:

+--------+------------+
| UserId | UserStatus |
+--------+------------+
| 1      | BUSY       |
| 2      | AT WORK    |
| 3      | OFFLINE    |
| 4      | BLOCKED    |
+--------+------------+
4 rows in set (0.00 sec)

कस्टम फील्ड मान के साथ ORDER BY की क्वेरी:

mysql> select *from DemoTable677 ORDER BY FIND_IN_SET(UserStatus, 'BLOCKED,AT WORK,OFFLINE,BUSY');

यह निम्न आउटपुट देगा:

+--------+------------+
| UserId | UserStatus |
+--------+------------+
| 4      | BLOCKED    |
| 2      | AT WORK    |
| 3      | OFFLINE    |
| 1      | BUSY       |
+--------+------------+
4 rows in set (0.03 sec)
  1. - MySQL में ALTER TABLE से ऑटो-इन्क्रीमेंट कॉलम कस्टम प्रारंभ मान के साथ जोड़ें

    मौजूदा टेबल में ALTER TABLE ... ADD COLUMN और AUTO_INCREMENT = मान का उपयोग करके कस्टम प्रारंभ मान वाला ऑटो-इन्क्रीमेंट कॉलम जोड़ सकते हैं। सिंटैक्स ALTER TABLE टेबल_नाम ADD COLUMN कॉलम_नाम INT NOT NULL AUTO_INCREMENT PRIMARY KEY, AUTO_INCREMENT = प्रारंभ_मान; उदाहरण: StudentId कॉलम 1000 से शुरू क

  1. - MySQL में ORDER BY FIELD और OR से कस्टम क्रम में प्राथमिकता-आधारित सॉर्टिंग

    ORDER BY FIELD(col, val1, val2, ...) का उपयोग करके कस्टम प्राथमिकता क्रम में सॉर्ट करें, और WHERE ... OR ... से केवल वांछित मान चुनें। टेबल बनाएं mysql> CREATE TABLE DemoTable1884 (Marks INT); डेटा डालें mysql> INSERT INTO DemoTable1884 VALUES(55), (97), (79), (87); 98 या 87 में से उच्च प्र

  1. - MySQL: GROUP BY के साथ फील्ड कैसे अपडेट करें?

    समस्या MySQL सीधे UPDATE में GROUP BY का समर्थन नहीं करता। समाधान: ORDER BY LIMIT का उपयोग करें। उदाहरण टेबल बनाएं: ); डेटा डालें: INSERT INTO DemoTable2018 (EmployeeName, EmployeeSalary) VALUES (Chris, 25400); अपडेट क्वेरी Chris की पहली प्रविष्टि (EmployeeId के अनुसार) का वेतन बढ़ाएं: ORDER B