如何在SQL中格式化当前日期和时间,而仅包括时间本身?

或不

我不确定如何将“默认系统日期”设置为仅在运行时具有时间位?

因此,输出将是当前时间'15:20:52'而没有日期。

我正在使用sql plus。

创建表时,如下所示:

create table timeslot
(
tsdate default sysdate not null,
tstime default sysdate not null)
小脚丫

SQLPLUS 标签的意思是“ Oracle”。

由于Oracle不提供“时间”数据类型,因此您将使用单个列:

SQL> create table timeslot
  2    (id   number    primary key,
  3     ts   date      default sysdate not null
  4    );

Table created.

SQL> insert into timeslot (id) values (1);

1 row created.

SQL>

我插入了什么?

SQL> select * From timeslot;

        ID TS
---------- --------
         1 03.06.20

SQL>

哦,男孩,这看起来很丑...无法知道它到底是什么,因为它可以

  • 2020年3月6日或
  • 2003年6月20日或
  • 1920年6月3日或...

但这仅仅是因为我数据库上的当前NLS设置就date这样显示了数据类型值。Oracle以7字节的二进制格式存储日期(人类无法识别我们的日期),因此我们必须做一些事情才能很好地呈现这些值。例如:

SQL> alter session set nls_date_format = 'dd.mm.yyyy';

Session altered.

SQL> select * From timeslot;

        ID TS
---------- ----------
         1 03.06.2020

好,这是日期,但是-时间在哪里?

SQL> alter session set nls_date_format = 'dd.mm.yyyy hh24:mi:ss';

Session altered.

SQL> select * From timeslot;

        ID TS
---------- -------------------
         1 03.06.2020 19:38:37

SQL>

当然,您不会alter session每次都这样做。您将使用to_char具有适当格式掩码的功能:

SQL> select id,
  2         to_char(ts, 'dd.mm.yyyy hh24:mi:ss') ts
  3  from timeslot;

        ID TS
---------- -------------------
         1 03.06.2020 19:38:37

SQL>

或者,当您想拆分日期和时间部分时,

SQL> select id,
  2         to_char(ts, 'dd.mm.yyyy') c_date,
  3         to_char(ts, 'hh24:mi:ss') c_time
  4  from timeslot;

        ID C_DATE     C_TIME
---------- ---------- --------
         1 03.06.2020 19:38:37

SQL>

或者,创建一个为您执行此操作的VIEW:

SQL> create or replace view v_timeslot as
  2  select id,
  3         to_char(ts, 'dd.mm.yyyy') c_date,
  4         to_char(ts, 'hh24:mi:ss') c_time
  5  from timeslot;

View created.

SQL> select * from v_timeslot;

        ID C_DATE     C_TIME
---------- ---------- --------
         1 03.06.2020 19:38:37

SQL>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在VBScript中格式化当前日期和时间

来自分类Dev

如何在VBA中格式化日期和时间?

来自分类Dev

如何在SQL SERVER中格式化日期时间

来自分类Dev

你如何在python中格式化日期时间

来自分类Dev

如何在JavaScript中格式化货币和时间

来自分类Dev

如何在 Flutter 中格式化 DateTime,如何在 Flutter 中获取当前时间?

来自分类Dev

在XSLT中格式化日期和时间

来自分类Dev

在PowerShell中格式化日期和时间

来自分类Dev

在jQuery中格式化日期时间

来自分类Dev

在SSRS中格式化日期时间

来自分类Dev

在 XSLT 中格式化日期时间

来自分类Dev

如何显示当前日期和时间(包括微秒)?

来自分类Dev

如何在Django视图中格式化当前时间?

来自分类Dev

在php中格式化日期和时间以进行sql插入

来自分类Dev

如何在javascript中格式化数据库日期时间?

来自分类Dev

如何在PHP中格式化RFC2445的日期时间

来自分类Dev

如何根据用户区域设置在Dygraphs图例中格式化日期和时间

来自分类Dev

如何在R中格式化这些时间

来自分类Dev

如何在SQlite中获取当前日期时间格式?

来自分类Dev

如何在ksh88中以YYYYMMDDHHMMSS格式获取当前日期和时间?

来自分类Dev

如何在Android中获取当前日期和时间?

来自分类Dev

如何在Android中获取当前日期和时间?

来自分类Dev

如何在dataweave中查找当前日期和时间?

来自分类Dev

如何查看当前日期和时间?

来自分类Dev

在Angular 2中格式化日期时间

来自分类Dev

在Rails中的模型中格式化日期时间

来自分类Dev

在PHP中格式化MySQL日期时间

来自分类Dev

无法在Laravel 7.2.2中格式化日期时间

来自分类Dev

在Rails中的模型中格式化日期时间

Related 相关文章

热门标签

归档