Oracle में, एक DATE
हमेशा एक समय घटक होता है। आपका ग्राहक समय घटक प्रदर्शित कर सकता है या नहीं भी कर सकता है, लेकिन यह तब भी होता है जब आप समानता की तुलना करने का प्रयास करते हैं। आप हमेशा मौजूदा सत्र के NLS_DATE_FORMAT
का उपयोग करने वाले स्ट्रिंग्स के बजाय तारीखों की तुलना तारीखों से करना चाहते हैं निहित रूपांतरण करने के लिए इस प्रकार उन्हें नाजुक बना देता है। इसमें या तो एएनएसआई दिनांक अक्षर शामिल होंगे या स्पष्ट to_date
कॉल
आप TRUNC
. का उपयोग कर सकते हैं DATE
को छोटा करने के लिए कार्य करें आधी रात तक
SELECT *
FROM porder
WHERE trunc(odate) = date '2013-10-04'
या आप एक श्रेणी तुलना कर सकते हैं (जो अधिक कुशल होगा यदि आप odate
पर किसी अनुक्रमणिका से लाभ उठा सकते हैं )
SELECT *
FROM porder
WHERE odate >= to_date( '04-Oct-2013', 'DD-Mon-YYYY' )
AND odate < to_date( '05-Oct-2013', 'DD-Mon-YYYY' );