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

बिना समय के केवल तिथि जानकर तालिका से चयन करें (ORACLE)

DATE Oracle में एक आरक्षित कीवर्ड है, इसलिए मैं कॉलम-नाम का उपयोग कर रहा हूं your_date इसके बजाय।

अगर आपके पास your_date . पर एक इंडेक्स है , मैं उपयोग करूंगा

WHERE your_date >= TO_DATE('2010-08-03', 'YYYY-MM-DD')
  AND your_date <  TO_DATE('2010-08-04', 'YYYY-MM-DD')

या BETWEEN :

WHERE your_date BETWEEN TO_DATE('2010-08-03', 'YYYY-MM-DD')
                    AND TO_DATE('2010-08-03 23:59:59', 'YYYY-MM-DD HH24:MI:SS')

यदि कोई अनुक्रमणिका नहीं है या यदि बहुत अधिक रिकॉर्ड नहीं हैं

WHERE TRUNC(your_date) = TO_DATE('2010-08-03', 'YYYY-MM-DD')

पर्याप्त होना चाहिए। TRUNC पैरामीटर के बिना DATE . से घंटे, मिनट और सेकंड निकाल देता है ।

यदि प्रदर्शन वास्तव में मायने रखता है, तो Function Based Index डालने पर विचार करें उस कॉलम पर:

CREATE INDEX trunc_date_idx ON t1(TRUNC(your_date));


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. नकली OLAP

  2. Oracle में किसी तिथि में AD/BC संकेतक कैसे जोड़ें?

  3. क्या विदेशी कुंजी हमेशा किसी अन्य तालिका में एक अद्वितीय कुंजी का संदर्भ देती है?

  4. Oracle डायनेमिक पिवोटिंग

  5. cx_Oracle:मैं प्रत्येक पंक्ति को एक शब्दकोश के रूप में कैसे प्राप्त कर सकता हूं?