"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > डेटाबेस पंक्तियों की गिनती के लिए कौन सी विधि तेज़ है: PDO::rowCount या COUNT(*) और क्यों?

डेटाबेस पंक्तियों की गिनती के लिए कौन सी विधि तेज़ है: PDO::rowCount या COUNT(*) और क्यों?

2024-11-06 को प्रकाशित
ब्राउज़ करें:440

Which Method is Faster for Counting Database Rows: PDO::rowCount or COUNT(*) and Why?

PDO::rowCount vs. COUNT(*) Performance

डेटाबेस क्वेरी में पंक्तियों की गिनती करते समय, PDO:: का उपयोग करने के बीच विकल्प rowCount और COUNT(*) प्रदर्शन को महत्वपूर्ण रूप से प्रभावित कर सकते हैं।

PDO::rowCount

PDO::rowCount अंतिम SQL कथन से प्रभावित पंक्तियों की संख्या लौटाता है। हालाँकि, SELECT स्टेटमेंट के लिए, कुछ डेटाबेस लौटाई गई पंक्तियों की संख्या लौटा सकते हैं। इस व्यवहार की गारंटी नहीं है और इस पर भरोसा नहीं किया जाना चाहिए।

आंतरिक रूप से, PDO::rowCount पूरे परिणाम सेट को संसाधित करता है, प्रत्येक पंक्ति के लिए मेमोरी आवंटित करता है। यह एक मेमोरी-सघन ऑपरेशन हो सकता है, विशेष रूप से बड़े परिणाम सेट के लिए।

COUNT(*)

COUNT() एक में पंक्तियों की संख्या की गणना करता है वास्तविक पंक्तियों को पुनः प्राप्त किए बिना क्वेरी करें। MySQL हर पंक्ति को लाए बिना गिनती खोजने के लिए COUNT() को अनुकूलित करता है।

प्रदर्शन तुलना

प्रदर्शन कारणों से, COUNT() आम तौर पर तेज़ होती है पंक्तियों की गिनती के लिए PDO::rowCount से अधिक। ऐसा इसलिए है क्योंकि COUNT() MySQL के अनुकूलन का लाभ उठाता है और संपूर्ण परिणाम सेट को संसाधित करने के मेमोरी-गहन संचालन से बचता है।

Indexing

एक इंडेक्स का उपयोग करना आईडी कॉलम पर दोनों तरीकों के प्रदर्शन में काफी सुधार हो सकता है। एक इंडेक्स MySQL को संपूर्ण तालिका को स्कैन किए बिना आईडी मान से मेल खाने वाली पंक्तियों को तुरंत ढूंढने की अनुमति देता है।

सर्वोत्तम अभ्यास

आम तौर पर, COUNT( का उपयोग करने की अनुशंसा की जाती है *) प्रश्नों में पंक्तियों की गिनती के लिए PDO::rowCount के बजाय, खासकर जब परिणाम सेट बड़ा हो। इसके अतिरिक्त, आईडी कॉलम पर एक इंडेक्स का उपयोग करने से प्रदर्शन में और सुधार हो सकता है।

विज्ञप्ति वक्तव्य यह लेख यहां पुनर्मुद्रित है: 1729724730 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.कॉम से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3