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

दिनांक प्रारूप के लिए Oracle SQL क्वेरी

to_date() 00:00:00 बजे एक तारीख लौटाता है, इसलिए आपको उस तारीख से मिनटों को "निकालना" होगा जिसकी आप तुलना कर रहे हैं:

select * 
from table
where trunc(es_date) = TO_DATE('27-APR-12','dd-MON-yy')

आप शायद trunc(es_date) . पर एक इंडेक्स बनाना चाहते हैं अगर ऐसा कुछ है जो आप नियमित रूप से कर रहे हैं।

शाब्दिक '27-APR-12' यदि डिफ़ॉल्ट दिनांक प्रारूप को किसी अन्य चीज़ में बदल दिया जाए तो बहुत आसानी से विफल हो सकता है। इसलिए सुनिश्चित करें कि आप हमेशा to_date() use का उपयोग करते हैं एक उचित प्रारूप मुखौटा (या एक एएनएसआई शाब्दिक:date '2012-04-27' के साथ) )

हालांकि आपने to_date() . का उपयोग करने में सही किया और निहित डेटा प्रकार रूपांतरण पर निर्भर नहीं है, आपके to_date() के उपयोग में अभी भी 'dd-MON-yy' प्रारूप के कारण एक सूक्ष्म नुकसान है। .

एक अलग भाषा सेटिंग के साथ यह आसानी से विफल हो सकता है उदा। TO_DATE('27-MAY-12','dd-MON-yy') जब NLS_LANG जर्मन पर सेट हो। प्रारूप में ऐसी किसी भी चीज़ से बचें जो भिन्न भाषा में भिन्न हो सकती है। चार अंकों वाले वर्ष और केवल संख्याओं का उपयोग करना उदा. 'dd-mm-yyyy' या 'yyyy-mm-dd'



  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. पीएल/एसक्यूएल - पाइपलाइन किए गए फ़ंक्शन में तत्काल निष्पादित करें

  3. ओरेकल जहां 1000 / हाइबरनेट की सीमा में है

  4. Oracle तालिका को शून्य मान के रूप में बनाता है

  5. JDBC ResultSet getDate सटीकता खो रहा है