जवाबों:
टाइमिंग \timing
psql प्रॉम्प्ट पर चालू की जा सकती है (जैसा कि कालेब ने पहले ही कहा था)।
यदि आप 8.4 या इसके बाद के संस्करण पर हैं, तो आप एक वैकल्पिक / बंद तर्क जोड़ सकते हैं\timing
, जो कि यदि आप .psqlrc पर समय निर्धारित करने में सक्षम होना चाहते हैं तो सहायक हो सकता है - आप तब \timing on
स्पष्ट रूप से एक स्क्रिप्ट में सेट कर सकते हैं जहाँ सादा \timing
अन्यथा टॉगल होगा। यह बंद
\timing
यदि आप किसी दूरस्थ सर्वर से कनेक्ट कर रहे हैं तो उस समय भी नेटवर्क विलंबता शामिल है।
जब आप ऐसा नहीं चाहते हैं और क्वेरी आउटपुट की भी आवश्यकता नहीं है, तो बेहतर उपयोग EXPLAIN ANALYZE
, जो प्लानर प्लान को प्लानर अनुमानों और वास्तविक निष्पादन समय के साथ आउटपुट करता है।
उदाहरण के लिए, EXPLAIN ANALYZE SELECT foo from bar ;
explain analyze
पैदावार के समय का उपयोग करते हुए जो लगभग दोगुना है जो मैं उपयोग करता हूं \timing
, जो कि नेटवर्क विलंबता के बारे में यहां टिप्पणियों के आधार पर मेरी अपेक्षा के विपरीत है। मुझे संदेह है कि उस सामान्य निष्पादन में ओवरहेड analyze
है जो क्वेरी समय में जोड़ता है। डॉक्स के आधार पर, मुझे लगता है कि EXPLAIN (ANALYZE, TIMING OFF) SELECT foo FROM bar
इससे आपको अधिक उपयोगी समय की जानकारी मिलेगी। देखें postgresql.org/docs/9.6/static/sql-explain.html जानकारी के लिए।