समस्या:
आप MySQL, PostgreSQL, या SQLite में किसी क्वेरी से उत्पन्न पंक्तियों की संख्या को सीमित करना चाहते हैं।
उदाहरण:
exam तालिका, परीक्षा के परिणामों के साथ छात्रों के नाम हैं।
| नाम | परीक्षा_परिणाम |
|---|---|
| जेनेट मोर्गन | 9 |
| ताया बैन | 11 |
| ऐनी जॉनसन | 11 |
| जोश कौर | 10 |
| एलेन थॉर्नटन | 8 |
आप तीन पंक्तियों को सर्वोत्तम परीक्षा परिणामों के साथ प्राप्त करना चाहते हैं।
समाधान:
SELECT * FROM exam ORDER BY exam_result DESC LIMIT 3;
क्वेरी का परिणाम इस तरह दिखता है:
| नाम | परीक्षा_परिणाम |
|---|---|
| ताया बैन | 11 |
| ऐनी जॉनसन | 11 |
| जोश कौर | 10 |
चर्चा:
सबसे पहले, पंक्तियों को exam_result . द्वारा क्रमबद्ध करें ORDER BY . का उपयोग करके अवरोही क्रम में कॉलम खंड और DESC खोजशब्द। फिर, ORDER BY . के बाद खंड, LIMIT का उपयोग करें कई पंक्तियों वाला कीवर्ड जिसे आप वापस करना चाहते हैं (यहां, 3 )।
ORDER BY exam_result DESC LIMIT 3
यदि आप तीन पंक्तियों को सर्वश्रेष्ठ तीन के बजाय यादृच्छिक रूप से पुनर्प्राप्त करना चाहते हैं, तो ORDER BY को छोड़ दें भाग।
SELECT * FROM exam LIMIT 3;
बेशक, आप जितनी चाहें उतनी पंक्तियों को पुनः प्राप्त कर सकते हैं। बस को बदलें 3 अपने वांछित नंबर के साथ।