【问题标题】:I would like to keep my table's data type as date but I want my table to show date and time format in the same column我想将表格的数据类型保留为日期,但我希望表格在同一列中显示日期和时间格式
【发布时间】:2020-10-03 17:55:41
【问题描述】:

我想将表格的数据类型保留为date,但我希望表格在同一列中显示日期和时间。

这是我目前所拥有的。如何更改格式?我使用 Oracle SQL。

insert into student 
  values 
  (001, 
   to_date('2018-02-02 21:05:18', 'YYYY-MM-DD HH24:MI:SS'), 
  'Oriel Road Brisbane', 
   103, 
   2486675, 
   760024, 
  'fdg57690gmig'
  );

【问题讨论】:

    标签: oracle date select


    【解决方案1】:

    你不必做任何事情;该列已经包含日期和时间。它是应该根据需要显示它的前端。以下是一些示例:

    SQL> create table test (datum date);
    
    Table created.
    
    SQL> insert into test (datum) values (to_date('2018-02-02 21:05:18', 'YYYY-MM-DD HH24:MI:SS'));
    
    1 row created.
    
    SQL> select * from test;
    
    DATUM
    --------
    02.02.18
    
    SQL> select to_char(datum, 'hh24:mi:ss') only_time,
      2    to_char(datum, 'dd-mon-yy') date_format_1,
      3    to_char(datum, 'yyyy-mm-dd hh24:mi:ss') date_and_time
      4  from test;
    
    ONLY_TIM DATE_FORMAT_1      DATE_AND_TIME
    -------- ------------------ -------------------
    21:05:18 02-vel-18          2018-02-02 21:05:18
    
    SQL>
    

    这意味着:如果您使用SELECT 语句,请使用带有适当格式掩码的TO_CHAR。如果是关于例如Oracle Apex、Forms 或 Reports,修改项目的格式掩码。

    或者,您可以与 DBA 交谈以更改整个数据库的 NLS 设置,或者您可以为您的会话执行此操作:

    SQL> alter session set nls_date_format = 'dd.mm.yyyy hh24:mi:ss';
    
    Session altered.
    
    SQL> select datum from test;
    
    DATUM
    -------------------
    02.02.2018 21:05:18
    

    【讨论】:

      【解决方案2】:

      Oracle 的 DATE 数据类型确实存储日期和时间 - Oracle 中没有仅日期数据类型,这与其他一些数据库不同,例如 MySQL,具有 DATEDATETIME数据类型。

      您的代码在表中正确插入了日期/时间值。

      当 Oracle 显示日期时,它默认使用由参数 NLS_DATE_FORMAT 定义的格式(对于您的数据库,它可能不包括时间部分)。

      您可以在会话级别更改设置:

      alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';
      

      或者您可以在日期列上使用to_char()

      select to_char(mydatecol, 'yyyy-mm-dd hh24:mi:ss') as mydatestring
      from mytable
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-07
        • 1970-01-01
        • 2020-10-13
        • 2018-06-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多