PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

PostgreSQL 9.4 में डायनेमिक SQL के लिए कोई निष्पादन योजना कैशिंग नहीं है?

प्रति दस्तावेज़:

यह एक उचित सुविधा है . एक गतिशील क्वेरी की प्रकृति यह है कि यह कॉल से कॉल में अपनी संरचना बदलती है।

यदि आप एक ही क्वेरी को बार-बार कॉल करना चाहते हैं (वैकल्पिक रूप से विभिन्न मापदंडों के साथ), तो तैयार कथन का उपयोग करें :

या plpgsql फ़ंक्शन के अंदर सादे (गैर-गतिशील) SQL कोड का उपयोग करें, जिन्हें तैयार किए गए कथनों की तरह भी माना जाता है।

आपके मामले में , PREPARE . करना सबसे अच्छा हो सकता है क्वेरी गतिशील रूप से। हमारे यहां बहुत समान मामला था:

साथ ही, यह बेहद है असामान्य है कि एक प्रश्न योजना बनाने में 1.4 सेकंड और निष्पादन के लिए केवल 0.1 सेकंड खर्च करता है। देखने लायक हो सकता है। अनुकूलन के तरीके हो सकते हैं। join_collapse_limit के साथ पसंद करें :

संबंधित:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL में 'उपयोगकर्ता' नाम की डेटाबेस तालिका नहीं बना सकता

  2. बिना डुप्लीकेट के लेफ्ट जॉइन वाली चार टेबल्स में शामिल हों

  3. pg_restore:[संग्रहकर्ता] फ़ाइल हेडर में असमर्थित संस्करण (1.13)

  4. जेपीए कई-से-अनेक संबंध अनंत रिकर्सन और स्टैक ओवरफ़्लो त्रुटि का कारण बनता है

  5. postgresql की pg_hba.conf फ़ाइल में होस्ट नाम कैसे निर्दिष्ट करें?