問題

例:

 select ename from emp where hiredate = todate('01/05/81','dd/mm/yy')
 

そして

 select ename from emp where hiredate = todate('01/05/81','dd/mm/rr')
 

異なる結果を返す

  ベストアンサー

http://oracle.ittoolbox.com/groups/technical-functional/oracle-dev-l/difference-between-yyyy-and-rrrr-format-519525

yyでは、年のうち2桁だけを取得できます。たとえば、99 1999 年。 RR は二桁の年を四桁に変換します。

50-99は1950-1999として保存され、00-49で終わる日付は次のように保存されます。 2000-2049. rrrrは4桁の入力を受け入れます(必須ではありませんが)。 2桁の日付をRRとして変換します。 Yyyyは4桁の入力を受け入れませんが、 日付変換を行う

基本的に、あなたの最初の例は81が2081であると仮定しますが、RRは1981を前提としています。したがって、最初の例では、5月1日以降の人を雇用しなかった可能性が最も高いため、行を返すべきではありません:-)

  同じタグがついた質問を見る

sqloracle