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

दिनांक-समय डेटा को संख्याओं के रूप में संग्रहीत करें

तिथियों को तिथियों के रूप में संग्रहीत किया जाए तो यह बहुत बेहतर होगा। उन्हें स्ट्रिंग के बजाय संख्याओं के रूप में संग्रहीत करना समस्याओं का एक अलग सेट पेश करता है।

यदि आप स्ट्रिंग्स के रूप में संग्रहीत तिथियों के साथ पूरी तरह से फंस गए हैं, तो कॉलम पर इंडेक्स का उपयोग करने की अनुमति देने के लिए, आपको उचित प्रारूप में स्ट्रिंग के रूप में पैरामीटर के रूप में उपयोग की जाने वाली तिथियों को कनवर्ट करना होगा और फिर इस तथ्य पर भरोसा करना होगा कि उस विशेष प्रारूप में तारों की छँटाई वास्तविक तिथियों के अपेक्षित क्रम से मेल खाती है। यदि आप कभी भी स्ट्रिंग की तुलना दिनांक या किसी संख्या से करते हैं, तो आपको निहित डेटा प्रकार रूपांतरण प्राप्त होगा, जो सबसे अच्छा, प्रदर्शन समस्याओं का कारण बनेगा क्योंकि अनुक्रमणिका का उपयोग नहीं किया जा सकता है और सबसे खराब परिणाम या त्रुटियां उत्पन्न करेगा।

यह मानते हुए कि आप डेटा प्रकार रूपांतरण से बचते हैं, प्रदर्शन समस्याएँ इस तथ्य से उत्पन्न होने की संभावना है कि जब आप गलत डेटा प्रकार का उपयोग करते हैं तो अनुकूलक को कार्डिनैलिटी का अनुमान लगाने में बहुत कठिनाई होती है। उदाहरण के लिए, Oracle जानता है कि 1/1/2012 और 1/1/2013 के बीच 365 दिन (या 8760 घंटे या 525600 मिनट) हैं। दूसरी ओर, '20120101000000' और '20130101000000' के बीच अरबों संभावित तार हैं। यह अनुकूलक को किसी अनुक्रमणिका का उपयोग नहीं करने का कारण बन सकता है जब आप इसे (या इसके विपरीत), गलत प्रकार के शामिल होने आदि का उपयोग करना चाहते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle के लिए एंटिटी फ्रेमवर्क संगत प्रदाताओं की तुलना?

  2. स्ट्रिंग रूपांतरण के लिए Oracle दिनांक

  3. PL/SQL में रिकॉर्ड फ़ील्ड प्रिंट करें

  4. NOT IN को EXISTS में नहीं बदलना

  5. XML से Oracle PL/SQL वातावरण में पथों की सूची तक