समस्या:
आप 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 अपने वांछित नंबर के साथ।