आप नियमित अभिव्यक्ति का उपयोग करके प्रारूप का परीक्षण कर सकते हैं।
यह कुछ ऐसा होगा:
select dates
from tbl
where regexp_like(dates, '[[:digit:]]{4}/[[:digit:]]{2}/[[:digit:]]{2}')
यह ठीक काम करता है। यह जांचता है कि प्रारूप "4-अंकीय संख्या/2 अंकों की संख्या/2 अंकों की संख्या" में है। आप कुछ मजबूत चाहते हैं, जैसे:
select dates
from tbl
where regexp_like(dates, '[[:digit:]]{4}/[[:digit:]]{2}/[[:digit:]]{2}') or
(substr(dates, 1, 4) not between '1900' and '2014' or
substr(dates, 6, 2) not between '01' and '12'
substr(dates, 9, 2) not between '01' and '31'
)
यह प्रत्येक कॉलम में प्रारूप और उचित मूल्यों के लिए जाँच करता है। बेशक, यह 31 जून की जांच नहीं करता है, लेकिन इसमें कई त्रुटियां होंगी।