SQLAlchemy क्वेरी केवल n परिणाम वापस करने के लिए?


89

मैं SQLAlchemy प्रलेखन के माध्यम से गुगली कर रहा हूं और पढ़ रहा हूं, लेकिन मुझे वह नहीं मिला, जिसकी मुझे तलाश है।

मैं SQLAlchemy में एक फ़ंक्शन की तलाश कर रहा हूं जो एक निश्चित संख्या के लिए क्वेरी द्वारा वापस किए गए परिणामों की संख्या को सीमित करता है, उदाहरण के लिए: 5? जैसे कुछ first()या all()

जवाबों:


165

के लिए sqlalchemy >= 1.0.13 उपयोग की सीमा विधि।

query.(Model).filter(something).limit(5).all()

मैं इस विधि का उल्लेख दूसरों के ऊपर करता हूं, यह अधिक दुबला है क्योंकि अतिरिक्त डेटा नेटवर्क पर पारित नहीं हुआ है ...
याकोव बेस्लर

10

वैकल्पिक वाक्य रचना

query.(Model).filter(something)[:5].all()

2
SQLAlchemy == 1.1.15, बढ़ाएँ:AttributeError: 'list' object has no attribute 'all'
Waket Zheng

1
इस क्वेरी का उपयोग करें: क्वेरी (मॉडल) .filter (कुछ) .limit (5) यह SQLAlchemy == 1.1.15 में ठीक काम करती है
राणा

2
यदि आप करते हैं [: 5] मुझे लगता है कि डेटाबेस अभी भी सभी परिणामों को खींच लेगा और फिर आप केवल अंतिम 5 का उपयोग करेंगे। निश्चित रूप से डेटाबेस को अतिरिक्त डेटा को वापस करने से रोकने के लिए सीमा का उपयोग करना बेहतर होगा।
ब्रायन सिज़ेमोर

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.