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

डेटाबेस से अंतिम 3 पंक्तियाँ चुनें ID ASC द्वारा क्रमबद्ध

MySQL में सबक्वेरी से अंतिम 3 पंक्तियाँ ID ASC क्रम में प्राप्त करें

आप सबक्वेरी का उपयोग कर सकते हैं। सिंटैक्स:

SELECT * FROM (
    SELECT * FROM yourTableName ORDER BY yourIdColumnName DESC LIMIT 3
) anyAliasName ORDER BY yourIdColumnName;

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

mysql> create table DemoTable (
    ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ClientName varchar(100)
); Query OK, 0 rows affected (0.60 sec)

इन्सर्ट कमांड से टेबल में कुछ रिकॉर्ड डालें:

mysql> insert into DemoTable(ClientName) values('Larry'); Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable(ClientName) values('Chris'); Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable(ClientName) values('Bob'); Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable(ClientName) values('David'); Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable(ClientName) values('Carol'); Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable(ClientName) values('Robert'); Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable(ClientName) values('Sam'); Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable(ClientName) values('Mike'); Query OK, 1 row affected (0.12 sec)

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

mysql> select *from DemoTable;

आउटपुट:

+----------+------------+
| ClientId | ClientName |
+----------+------------+
| 1        | Larry      |
| 2        | Chris      |
| 3        | Bob        |
| 4        | David      |
| 5        | Carol      |
| 6        | Robert     |
| 7        | Sam        |
| 8        | Mike       |
+----------+------------+
8 rows in set (0.00 sec)

डेटाबेस से अंतिम 3 पंक्तियाँ ID ASC द्वारा क्रमबद्ध चुनने का क्वेरी:

mysql> SELECT * FROM ( SELECT * FROM DemoTable ORDER BY ClientId DESC LIMIT 3 ) tbl ORDER BY ClientId ASC;

आउटपुट:

+----------+------------+
| ClientId | ClientName |
+----------+------------+
| 6        | Robert     |
| 7        | Sam        |
| 8        | Mike       |
+----------+------------+
3 rows in set (0.00 sec)

व्याख्या: आंतरिक क्वेरी ORDER BY ClientId DESC LIMIT 3 अंतिम 3 पंक्तियाँ (उच्चतम ID) लेती है। बाहरी क्वेरी उन्हें ORDER BY ClientId ASC से आरोही क्रम में पुनः क्रमबद्ध करती है। MySQL 8.0+ में WITH (CTE) का उपयोग अधिक पठनीय है।

  1. - MySQL में SELECT FROM के बिना टेबल मौजूद है या नहीं कैसे जांचें?

    टेबल अस्तित्व जांचने के लिए SHOW TABLES कमांड का उपयोग करें - यह SELECT क्वेरी नहीं चलाता। तरीका 1: सभी टेबल सूचीबद्ध करें SHOW TABLES; यह डेटाबेस की सभी टेबल दिखाता है (आउटपुट में 72 टेबल)। तरीका 2: विशिष्ट टेबल जांचें (सुझाया गया) SHOW TABLES LIKE tblstudent; +---------------------------------

  1. MySQL से अंतिम 10 रो कैसे चुनें? MySQL से अंतिम 10 रो कैसे चुनें?

    MySQL से अंतिम 10 रो चुनने के लिए, हम SELECT स्टेटमेंट और LIMIT कॉन्सेप्ट के साथ सबक्वेरी का उपयोग कर सकते हैं। निम्न एक उदाहरण है। टेबल बनाना। mysql> create table Last10RecordsDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.75 sec) टेबल में रिकॉर

  1. - MySQL में पहली और आखिरी पंक्ति को छोड़कर सभी पंक्तियाँ कैसे प्राप्त करें?

    MySQL में किसी ग्रुप या टेबल की पहली और आखिरी पंक्ति को छोड़कर मध्य की पंक्तियाँ प्राप्त करने के लिए, MIN() और MAX() के साथ सबक्वेरी का उपयोग करें। यह टाइम-सीरीज़ डेटा या क्रमबद्ध रिकॉर्ड्स के लिए उपयोगी है। उदाहरण: पहली और आखिरी StudentId को छोड़कर डेमो टेबल बनाएं: mysql> CREATE TABLE DemoTab