在 INSERT SELECT Query of Oracle 中,它已更改 DATE 格式


INSERT INTO T1 ( ..., CONTRACT_DATE)
SELECT ..., CONTRACT_DATE
  FROM T2
 WHERE ...

T1CONTRACT_DATE代表"2017-12-12但在T2,转移了"CONTRACT_DATE stands as ' 12-DEC-12"。

事件,如果我像

TO_DATE(TO_CHAR(CONTRACT_DATE, 'YYYY-MM-DD'), 'YYYY-MM-DD')

是一样的。

对于T1T2之间的相同格式,我该怎么办?

看起来 oyu 有一个以日期作为文本的表格(例如 VARCHAR (和另一个格式为 DATE 。现在,您查看DATE字段的方式取决于您使用的工具。

我想你应该使用你的SESSION参数:

Alter session set nls_date_format='YYYY-MM-DD';

例如,如果您使用sqlplus

SQL> SELECT * FROM T1;
BA 14/06/2016
FM 31/05/2016
TP 15/06/2016
SQL>     Alter session set nls_date_format='YYYY-MM-DD';
Session altered.
SQL>  SELECT * FROM T1;
BA 2016-06-14
FM 2016-05-31
TP 2016-06-15

现在来自 PLSQL 开发人员或其他 IDE:这应该在您的首选项中找到。

最新更新