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

कैसे एक स्ट्रिंग के भीतर एक विशिष्ट मुखौटा खोजने के लिए - Oracle?

डेटा मॉडल समस्या की तरह लगता है (एक स्ट्रिंग में दिनांक संग्रहीत करना)।

लेकिन, चूंकि ऐसा होता है और हम कभी-कभी चीजों को नियंत्रित या बदल नहीं सकते हैं, मैं आमतौर पर इस तरह के एक फ़ंक्शन को रखता हूं:

CREATE OR REPLACE FUNCTION safe_to_date (p_string        IN VARCHAR2,
                                         p_format_mask   IN VARCHAR2,
                                         p_error_date    IN DATE DEFAULT NULL)
  RETURN DATE
  DETERMINISTIC IS
  x_date   DATE;
BEGIN
  BEGIN
    x_date   := TO_DATE (p_string, p_format_mask);
    RETURN x_date;                                                        -- Only gets here if conversion was successful
  EXCEPTION
    WHEN OTHERS THEN
      RETURN p_error_date;
  END;
END safe_to_date;

फिर इसे इस तरह इस्तेमाल करें:

WITH d AS
       (SELECT 'X' string_field FROM DUAL
        UNION ALL
        SELECT '11/15/2012' FROM DUAL
        UNION ALL
        SELECT '155' FROM DUAL)
SELECT safe_to_date (d.string_field, 'MM/DD/YYYY')
FROM   d;


  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 java class में system.out.println आउटपुट कहाँ जाता है?

  2. रोलबैक डेटाबेस निहित बचत बिंदुओं का उपयोग कर बदलता है? - आकाशवाणी

  3. क्षमता के लिए जेडीबीसी जांच - सेवपॉइंट रिलीज

  4. Oracle डाटाबेस परिवर्तन अधिसूचना

  5. किसी अन्य उपयोगकर्ता से तालिका से क्वेरी कॉलम नाम