Sql 如何通过oracle数据库链接将日期时间字符串传递到远程数据库?

Sql 如何通过oracle数据库链接将日期时间字符串传递到远程数据库?,sql,datetime,oracle10g,birt,Sql,Datetime,Oracle10g,Birt,我使用数据库链接从远程数据库视图查询数据。当我将本地时间应用于gmt时间转换[Query 2]时,sql性能变得非常慢。我更喜欢在远程数据库中进行gmt日期转换。是否仍要将日期字符串传递到远程数据库 [Query-1] SELECT * FROM v_captured_details@DL_REMOTE WHERE CAPTURE_TIME_GMT BETWEEN (TO_DATE(&STARTDATE, 'DD/MM/YYYY HH24:

我使用数据库链接从远程数据库视图查询数据。当我将本地时间应用于gmt时间转换[Query 2]时,sql性能变得非常慢。我更喜欢在远程数据库中进行gmt日期转换。是否仍要将日期字符串传递到远程数据库

[Query-1]
    SELECT *
    FROM v_captured_details@DL_REMOTE
    WHERE CAPTURE_TIME_GMT BETWEEN
            (TO_DATE(&STARTDATE, 'DD/MM/YYYY HH24:MI:SS')) AND (TO_DATE(&ENDDATE, 'DD/MM/YYYY HH24:MI:SS'));


[Query-2]
    SELECT *
    FROM v_captured_details@DL_REMOTE
    WHERE CAPTURE_TIME_GMT BETWEEN
           GMT_TIME_DATE(TO_DATE(&STARTDATE, 'DD/MM/YYYY HH24:MI:SS')) AND GMT_TIME_DATE(TO_DATE(&ENDDATE, 'DD/MM/YYYY HH24:MI:SS'));

这些数据需要用本地数据库数据填充到BIRT报告中。不喜欢在BIRT中进行本地到gmt的转换。

假设
gmt\u time\u date
是某种BIRT函数,你的最后几句话对我来说没有意义。你说你不想在BIRT中进行本地到GMT的转换,但这就是你在这里要做的。除非
GMT\u TIME\u DATE
是您在本地定义的PL/SQL函数。您是否只想避免使用返回
SYS\u REFCURSOR
的PL/SQL函数?不是避免查询中的所有PL/SQL函数?是的,gmt\u time\u date是本地数据库中定义的PL/SQL函数。您必须使用该函数吗?或者您可以从函数中获取逻辑并将其合并到查询中,以便在远程计算机上对函数进行评估?你能在远程机器上创建这个函数吗?
gmt\u time\u date
是否定义为确定性?它实际上是确定性的吗?我在远程数据库中有一个函数。如何将日期字符串传递到远程数据库?如果我在远程数据库中将列CAPTURE\u TIME\u GMT转换为local,它也会变得非常慢。@如果我删除了游标部分,我认为游标不能在BIRT模板中使用。