问题描述
嗨,
我有下面的PL/SQL代码。我正在格式化YYYY-MM-DDTHH:MI:SS.SSSZ格式的日期并插入到表格中。这在SQL Developer中工作正常。
当在从PL/SQL生成的Oracle Apex 18c报告中执行相同操作时,返回查询,则时间部分消失并显示为 '2020-05-04t::.000Z。
在Apex中使用时,有没有办法保留时间成分?欢迎任何帮助
上表中的数据->'AAAAA',19年2月18日上午07.20.44.000000000,20年2月28日上午12.06.41.000000000
谢谢,
吉里什
我有下面的PL/SQL代码。我正在格式化YYYY-MM-DDTHH:MI:SS.SSSZ格式的日期并插入到表格中。这在SQL Developer中工作正常。
当在从PL/SQL生成的Oracle Apex 18c报告中执行相同操作时,返回查询,则时间部分消失并显示为 '2020-05-04t::.000Z。
在Apex中使用时,有没有办法保留时间成分?欢迎任何帮助
create table my_table(bname varchar2(30),date1 timestamp, date2 timestamp)
上表中的数据->'AAAAA',19年2月18日上午07.20.44.000000000,20年2月28日上午12.06.41.000000000
create table dest_table(bname varchar2(30),from_time varchar2(30),from_time varchar2(30));
declare
l_kURL varchar2(3000);
l_query varchar2(3000);
l_url varchar2(3000);
cursor kBname is
select to_char(to_date(substr(date1,1,9),'DD-MON-YY'),'YYYY-MM-DD')||'T'||substr(date1,11,2)||':'||substr(date1,14,2)||':'||substr(date1,17,2)||'.'||'000Z' from_time,
to_char(to_date(substr(date2,1,9),'DD-MON-YY'),'YYYY-MM-DD')||'T'||substr(date2,11,2)||':'||substr(date2,14,2)||':'||substr(date2,17,2)||'.'||'000Z' to_time,
bname
from my_table;
r kBname%rowtype;
begin
open kBname;
fetch kBname int r;
close kBname;
insert into dest_table values(r.bname,r.from_time,r.to_time);
commit;
end;谢谢,
吉里什
专家解答
您不需要SUBSTR函数来获取时间戳格式。例如,TO_CHAR可以为您完成所有操作
我这样说的原因是,在APEX应该查询返回一个时间戳,然后 * 在APEX * 你可以指定的格式掩码,你希望数据被呈现在。
SQL> select to_char(systimestamp,'DD-MON-YYYY HH24:MI:SS.FF9') from dual; TO_CHAR(SYSTIMESTAMP,'DD-MON-YYYYHH24:M --------------------------------------- 12-MAY-2020 17:21:40.805000000
我这样说的原因是,在APEX应该查询返回一个时间戳,然后 * 在APEX * 你可以指定的格式掩码,你希望数据被呈现在。
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




