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

केवल उन अभिलेखों को कैसे प्रारूपित करें जिनके लिए ORA-01843 फेंका नहीं गया है?

CASE का उपयोग करें अभिव्यक्ति जो कॉलम की स्थिति की जांच करती है, और केवल सशर्त रूप से मान्य तिथि के रूप में पार्स करने का प्रयास करती है:

SELECT
    MyColumn,
    CASE WHEN REGEXP_LIKE(MyColumn, '^\s*\d\d\d\d\d\d\s*$')
         THEN TO_CHAR(TO_DATE(TRIM(MyColumn), 'YYMMDD'), 'MM/DD/YYYY')
         ELSE MyColumn END AS new_col
FROM MyTable

लेकिन एक सामान्य टिप्पणी के रूप में, आपको अपनी टेबल में टेक्स्ट के रूप में दिनांक जानकारी संग्रहीत करने से बचना चाहिए। अब आप इससे बचने का एक कारण देख रहे हैं।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कौन सा डाउनलोड करना है:JDK या JRE?

  2. sqlplus से संग्रहित प्रक्रिया को कॉल करें

  3. oracle NCHAR या NVARCHAR कॉलम में राष्ट्रीय वर्ण डालने से काम नहीं चलता

  4. XMLType Oracle से XML तत्वों को पुनः प्राप्त करना

  5. नकली OLAP