如何使用oracle或Plsql转换为字符('DD/MM/YYYY HH24:MI')和日期('DD/MM/YYYY HH24:MI')

如何使用oracle或Plsql转换为字符('DD/MM/YYYY HH24:MI')和日期('DD/MM/YYYY HH24:MI'),oracle,Oracle,选择以确定日期确认日期确认时间'dd/mm/yyyyyyyyh24:mi' 来自qc\u警告\u记录q 其中q.warning_id=125; 国际在线节目时间 假设q.confirm\u date是一个日期,q.confirm\u time是一个格式为HH24:MI的字符串,您需要创建一个date-date-time数据类型的值,将从第一列截断到午夜的日期与从第二列开始的时间相结合,您可以执行以下操作: to_date( to_char(q.confirm_date, 'dd/mm/yyyy'

选择以确定日期确认日期确认时间'dd/mm/yyyyyyyyh24:mi' 来自qc\u警告\u记录q 其中q.warning_id=125; 国际在线节目时间

假设q.confirm\u date是一个日期,q.confirm\u time是一个格式为HH24:MI的字符串,您需要创建一个date-date-time数据类型的值,将从第一列截断到午夜的日期与从第二列开始的时间相结合,您可以执行以下操作:

to_date( to_char(q.confirm_date, 'dd/mm/yyyy') || ' ' || q.confirm_time
       , 'dd/mm/yyyy hh24:mi'
       )
如果查询日期并且NLS\U DATE\U格式设置为dd MON rr,则无法查看一天中的时间。要更改它,必须先运行

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

根据你提供的信息,你似乎在做类似的事情

请在下面找到一个用例

  Create table qc_warning_record(id number,confirm_DATE DATE,confirm_time varchar2(10));
-----------------------------------
INSERT INTO qc_warning_record values(125,sysdate-3, '100012');
  -------------------------------  
 select (to_char(q.confirm_DATE,'DD-MON-YYYY') || ' '|| to_char(to_date(q.confirm_time, 'hh24miss'),'hh24:mi:ss')) DATE_TIME
     from qc_warning_record q where q.id = 125 ;

我不明白你的问题。我看到了你的标题,我看到了一个查询,其中你引用了q.date和q.varchar2。你是想让我们猜猜那是什么?还是什么?抱歉,新代码选择了qc_dateq.confirm|DATE |‘| | q.confirm|u time,'dd/mm/yyyyyyy hh24:mi'来自qc_warning_记录q,其中q.warning_id=125I仍然不明白。什么是确认日期?我的意思是:它的数据类型是什么,它可能有哪些说明性的值?确认时间也是一样。你明白我的问题吗?1.数据类型是什么?第一个是日期吗?如果是,有哪些典型值?他们总是在午夜吗?第二列是否为VARCHAR2类型,其典型值为22:30,如10:30 PM?而且,您是否需要将它们融合在一起以获得日期时间?为什么不将时间组件存储在日期列中?你在浪费空间,让自己的生活变得艰难