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

Yu Xu edited comment on CALCITE-6929 at 3/31/25 9:25 AM:
---------------------------------------------------------

OK, there are several difference just as I know:
in functions: 
1. presto support starts_with/ends_with function but PG not support and need 
other way to archive it.
2. such as substring function PG, eg: substring('Thomas' from 2 for 3) → hom, 
but presto only can use as starts_with(string, substring) -> boolean()
can refer to [https://prestodb.github.io/docs/current/functions/string.html]  
and [https://www.postgresql.org/docs/current/functions-string.html]

if we fix the compatibility problem in future maybe need to decouple the presto 
resolve logic from PG firstly and I had updated the Jira description.  
[~nobigo] 


was (Author: JIRAUSER307770):
OK, there are several difference just as I know:
in functions: 
1. presto support starts_with/ends_with function but PG not support and need 
other way to archive it.
2. such as substring function PG, eg: substring('Thomas' from 2 for 3) → hom, 
but presto only can use as starts_with(string, substring) -> boolean()
can refer to https://prestodb.github.io/docs/current/functions/string.html  and 
https://www.postgresql.org/docs/current/functions-string.html

if we fix the compatibility problem in future maybe need to decouple the presto 
resolve logic from PG firstly.  [~nobigo] 

> PrestoSqlDialect unparseCall should not reuse from PostgreSqlDialect
> --------------------------------------------------------------------
>
>                 Key: CALCITE-6929
>                 URL: https://issues.apache.org/jira/browse/CALCITE-6929
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.39.0
>            Reporter: Yu Xu
>            Assignee: Yu Xu
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.40.0
>
>
> Currently PrestoSqlDialect#unparseCall default condition reuse 
> PostgreSqlDialect directly which would handle with floor function, it is not 
> suitable when PostgreSqlDialect change in future but not consistent with 
> Presto would bring risk in compatibility.
> for example:
> in functions: 
> 1. presto support starts_with/ends_with function but PG not support and need 
> other way to archive it.
> 2. such as substring function PG, eg: substring('Thomas' from 2 for 3) → hom, 
> but presto only can use as starts_with(string, substring) -> boolean()
> can refer to [https://prestodb.github.io/docs/current/functions/string.html]  
> and [https://www.postgresql.org/docs/current/functions-string.html]
> if we fix the compatibility problem in future maybe need to decouple the 
> presto resolve logic from PG firstly



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

Reply via email to