oracle:如何修改下面的sql查询以返回1900而不是2000?

cwtwac6a  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(371)

如何修改以下查询以返回1900而不是2000?

SELECT TO_CHAR(TO_DATE('27-OCT-00', 'DD-MON-RR') ,'YYYY') "Year"
   FROM DUAL;

如何处理1900和2000年的值。
也假设我将ddmmyy保存为190700。甲骨文怎么知道是1900年还是2000年?

x33g5p2x

x33g5p2x1#

减去100年。

SQL> select to_char(add_months(to_date('27-OCT-00', 'dd-mon-rr'), -12 * 100), 'yyyy') l_year from dual;

L_YE
----
1900

SQL>

甲骨文怎么知道是1900年还是2000年?
不会的;怎么可能呢?使用4位数表示年份,就不会有问题。

相关问题