सबक्वेरी में LIMIT और बाहरी ORDER BY का उपयोग
अंतिम N रिकॉर्ड आरोही क्रम में प्राप्त करने के लिए, पहले सबक्वेरी में DESC क्रम में LIMIT लागू करें, फिर बाहरी क्वेरी में ASC क्रम में सॉर्ट करें।
सिंटैक्स
SELECT * FROM (
SELECT * FROM yourTableName ORDER BY yourColumnName DESC LIMIT 20
) AS sub ORDER BY sub.yourColumnName ASC;
उदाहरण (ProductInformation टेबल, 23 पंक्तियाँ)
अंतिम 20 रिकॉर्ड ProductId के अनुसार आरोही क्रम में:
mysql> SELECT * FROM (
-> SELECT * FROM ProductInformation ORDER BY ProductId DESC LIMIT 20
-> ) t1 ORDER BY t1.ProductId ASC;
आउटपुट (ProductId 104 से 123 तक):
+-----------+-------------+--------------+ | ProductId | ProductName | ProductPrice | +-----------+-------------+--------------+ | 104 | Product-4 | 100 | | 105 | Product-5 | 1500 | | ... | ... | ... | | 123 | Product-23 | 10000 | +-----------+-------------+--------------+
अवरोही क्रम में प्राप्त करने के लिए
SELECT * FROM (
SELECT * FROM ProductInformation ORDER BY ProductId DESC LIMIT 20
) t2 ORDER BY t2.ProductId DESC;
नोट: यह पैटर्न पेजिनेशन के "अंतिम पृष्ठ" को सही क्रम में दिखाने के लिए उपयोगी है।