[ 
https://issues.apache.org/jira/browse/CALCITE-928?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14968163#comment-14968163
 ] 

Sean Hsuan-Yi Chu commented on CALCITE-928:
-------------------------------------------

I found out the tests in SqlParserTest.testIntervalLiterals() give some hint 
regarding the semantics of the data field "sign" in 
SqlIntervalLiteral#IntervalValue 

Can we confirm the following speculation? 
Is INTERVAL -'-1' YEAR equivalent to  INTERVAL '1' YEAR? The data field "sign" 
is used for double negative in this case? 


> Parsing Issue with Interval
> ---------------------------
>
>                 Key: CALCITE-928
>                 URL: https://issues.apache.org/jira/browse/CALCITE-928
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: Sean Hsuan-Yi Chu
>            Assignee: Sean Hsuan-Yi Chu
>
> There are two issues with Interval type
> 1. A case which should be blocked at parsing:
> The negative sign is not supposed to be outside of quotes. For example, 
> {code}
> INTERVAL -'1' hour
> {code}
> Calcite should have blocked it.
> 2. The sign is not set correctly in parsing if there is a negative sign in 
> quotes. For example, 
> {code}
> INTERVAL '-1' hour
> {code}
> If you set a break point at the constructor of IntervalValue (, which will be 
> called during parsing), you can see that, in the case above, sign is set to 
> be +1.  
>  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to