0

在我的一个专栏中,我也想在以下条件下存储时间。这是下面的查询。

APPROVED_DATE = CASE WHEN PAPPROVED_BY IS NULL THEN NULL ELSE SYSDATE END,

如何在SYSDATE此处添加时间部分

4

2 回答 2

1

它已经在那里了;如果您没有看到它,那是因为您的 NLS 设置。这是您可能会做的一个示例:ALTER SESSION 或使用 TO_CHAR:

SQL> create table test (approved_Date date);

Table created.

SQL> insert into test values (sysdate);

1 row created.

SQL> select * from test;

APPROVED
--------
05.01.18

SQL> select to_char(approved_Date, 'dd.mm.yyyy hh24:mi:ss') from test;

TO_CHAR(APPROVED_DA
-------------------
05.01.2018 10:37:38

SQL> alter session set nls_date_format = 'dd-mm-yyyy hh:mi:ss am';

Session altered.

SQL> select * from test;

APPROVED_DATE
----------------------
05-01-2018 10:37:38 AM

SQL>
于 2018-01-05T09:39:07.280 回答
0

您的 CASE 代码运行良好。您只需要更改显示设置,因为 sysdate 中已经有时间元素。

如果您使用的是 PL/SQL,请转到

工具 > 首选项 > 日期/时间

并根据您的要求更改格式。

并在访问此字段时使用to_char(sysdate , 'DD/MM/YYYY hh24:mi:ss')

于 2018-01-05T10:23:24.787 回答