[ 
https://issues.apache.org/jira/browse/CALCITE-6666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Zhengqiang Duan updated CALCITE-6666:
-------------------------------------
    Description: 
Hi community. When I execute sql with Oracle SYSDATE and SYSTIMESTAMP 
functions, the following error message appears. 
{code:java}
SELECT SYSDATE FROM SBTEST1 WHERE ID = 12345600
// Caused by: org.apache.calcite.runtime.CalciteContextException: From line 1, 
column 8 to line 1, column 14: Column 'SYSDATE' not found in any table 

SELECT SYSTIMESTAMP FROM SBTEST1 WHERE ID = 12345600
// Caused by: org.apache.calcite.runtime.CalciteContextException: From line 1, 
column 8 to line 1, column 19: Column 'SYSTIMESTAMP' not found in any table 
{code}
I checked the Oracle official documentation and found that SYSDATE and 
SYSTIMESAMP functions are similar to CURRENT_DATE and CURRENT_TIMESTAMP. I 
think we can quickly adapt to support them. 

Here is the documentation for the Oracle SYSDATE and SYSTIMESTAMP functions:
 - 
[https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/SYSDATE.html]
 - 
[https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/SYSTIMESTAMP.html]

Refer to this article - 
[https://database-heartbeat.com/2021/09/28/sysdate-vs-current_date-in-oracle-database/],
 he describes the difference between SYSDATE, SYSTIMESTAMP functions, and 
CURRENT_DATE, CURRENT_TIMESTAMP: SYSDATE is a SQL function that returns the 
current date and time set for the operating system of the database server. 
CURRENT_DATE returns the current date in the session time zone. The same story 
applies to SYSTIMESTAMP and CURRENT_TIMESTAMP.

  was:
Hi community. When I execute sql with Oracle SYSDATE and SYSTIMESTAMP 
functions, the following error message appears. 
{code:java}
SELECT SYSDATE FROM SBTEST1 WHERE ID = 12345600
// Caused by: org.apache.calcite.runtime.CalciteContextException: From line 1, 
column 8 to line 1, column 14: Column 'SYSDATE' not found in any table 
SELECT SYSTIMESTAMP FROM SBTEST1 WHERE ID = 12345600
// Caused by: org.apache.calcite.runtime.CalciteContextException: From line 1, 
column 8 to line 1, column 19: Column 'SYSTIMESTAMP' not found in any table 
{code}
I checked the Oracle official documentation and found that SYSDATE and 
SYSTIMESAMP functions are similar to CURRENT_DATE and CURRENT_TIMESTAMP. I 
think we can quickly adapt to support them. 

Here is the documentation for the Oracle SYSDATE and SYSTIMESTAMP functions:
- 
https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/SYSDATE.html
- 
https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/SYSTIMESTAMP.html

Refer to this article - 
https://database-heartbeat.com/2021/09/28/sysdate-vs-current_date-in-oracle-database/,
 he describes the difference between SYSDATE, SYSTIMESTAMP functions, and 
CURRENT_DATE, CURRENT_TIMESTAMP: SYSDATE is a SQL function that returns the 
current date and time set for the operating system of the database server. 
CURRENT_DATE returns the current date in the session time zone. The same story 
applies to SYSTIMESTAMP and CURRENT_TIMESTAMP.


> Support Oracle SYSDATE and SYSTIMESTAMP functions
> -------------------------------------------------
>
>                 Key: CALCITE-6666
>                 URL: https://issues.apache.org/jira/browse/CALCITE-6666
>             Project: Calcite
>          Issue Type: Improvement
>            Reporter: Zhengqiang Duan
>            Assignee: Zhengqiang Duan
>            Priority: Major
>
> Hi community. When I execute sql with Oracle SYSDATE and SYSTIMESTAMP 
> functions, the following error message appears. 
> {code:java}
> SELECT SYSDATE FROM SBTEST1 WHERE ID = 12345600
> // Caused by: org.apache.calcite.runtime.CalciteContextException: From line 
> 1, column 8 to line 1, column 14: Column 'SYSDATE' not found in any table 
> SELECT SYSTIMESTAMP FROM SBTEST1 WHERE ID = 12345600
> // Caused by: org.apache.calcite.runtime.CalciteContextException: From line 
> 1, column 8 to line 1, column 19: Column 'SYSTIMESTAMP' not found in any 
> table {code}
> I checked the Oracle official documentation and found that SYSDATE and 
> SYSTIMESAMP functions are similar to CURRENT_DATE and CURRENT_TIMESTAMP. I 
> think we can quickly adapt to support them. 
> Here is the documentation for the Oracle SYSDATE and SYSTIMESTAMP functions:
>  - 
> [https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/SYSDATE.html]
>  - 
> [https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/SYSTIMESTAMP.html]
> Refer to this article - 
> [https://database-heartbeat.com/2021/09/28/sysdate-vs-current_date-in-oracle-database/],
>  he describes the difference between SYSDATE, SYSTIMESTAMP functions, and 
> CURRENT_DATE, CURRENT_TIMESTAMP: SYSDATE is a SQL function that returns the 
> current date and time set for the operating system of the database server. 
> CURRENT_DATE returns the current date in the session time zone. The same 
> story applies to SYSTIMESTAMP and CURRENT_TIMESTAMP.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to