[jira] [Commented] (CALCITE-3263) Add MD5, SHA1 SQL functions

2019-08-21 Thread Julian Hyde (Jira)


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

Julian Hyde commented on CALCITE-3263:
--

Reviewing now.

> Add MD5, SHA1 SQL functions
> ---
>
> Key: CALCITE-3263
> URL: https://issues.apache.org/jira/browse/CALCITE-3263
> Project: Calcite
>  Issue Type: Improvement
>Reporter: ShuMing Li
>Assignee: Julian Hyde
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 1.21.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> `MD5/SHA1` functions are common UDFs in many SQL engines. We may support them 
> in SQL just like `from_base64`/`to_base64`. 
> h3. A Review of Other Databases
>  * BigQuery : 
> [https://cloud.google.com/bigquery/docs/reference/standard-sql/functions-and-operators#md5]
>  ** Function : MD5(String/Bytes)
>  ** Input : String/Bytes
>  ** Output : Bytes
>  * MySQL : [https://dev.mysql.com/doc/refman/8.0/en/encryption-functions.html]
>  ** Function : MD5(String)
>  ** Input : String
>  ** Output : String
>  * Oracle : 
> [https://docs.oracle.com/database/121/SQLRF/functions183.htm#SQLRF55647]
>  ** Function : STANDARD_HASH(expr, method)
>  ** Input : String
>  ** Output : RAW
>  * PostgreSQL : 
> [https://www.postgresql.org/docs/current/functions-string.html 
> |https://www.postgresql.org/docs/current/functions-string.html]
>  ** Function : MD5(String)
>  ** Input : String
>  ** Output : Text
>  * Redshift : [https://docs.aws.amazon.com/redshift/latest/dg/r_MD5.html]
>  ** Function : MD5(String)
>  ** Input : String
>  ** Output : String



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[jira] [Commented] (CALCITE-3263) Add MD5, SHA1 SQL functions

2019-08-19 Thread ShuMing Li (Jira)


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

ShuMing Li commented on CALCITE-3263:
-

Thanks for [~julianhyde]'s replies. I will add a review of what other databases 
do later.

> Add MD5, SHA1 SQL functions
> ---
>
> Key: CALCITE-3263
> URL: https://issues.apache.org/jira/browse/CALCITE-3263
> Project: Calcite
>  Issue Type: Improvement
>Reporter: ShuMing Li
>Priority: Minor
>  Labels: pull-request-available
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> `MD5/SHA1` functions are common UDFs in many SQL engines. We may support them 
> in SQL just like `from_base64`/`to_base64`.
>  
> - MySQL: https://dev.mysql.com/doc/refman/8.0/en/encryption-functions.html
> - PostgreSQL: https://www.postgresql.org/docs/current/functions-string.html



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[jira] [Commented] (CALCITE-3263) Add MD5, SHA1 SQL functions

2019-08-19 Thread Julian Hyde (Jira)


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

Julian Hyde commented on CALCITE-3263:
--

Please rename the test methods from "testMD5" to "testMd5". We initialize 
acronyms.

There is not exactly consensus on these functions. BigQuery, example, accepts 
both string and binary as arguments, and returns a BINARY. Oracle has 
STANDARD_HASH and returns a RAW value. Is Redshift consistent with PostgreSQL? 
Please add to this Jira case a review of what other databases do. It will be a 
template for future work.

 

> Add MD5, SHA1 SQL functions
> ---
>
> Key: CALCITE-3263
> URL: https://issues.apache.org/jira/browse/CALCITE-3263
> Project: Calcite
>  Issue Type: Improvement
>Reporter: ShuMing Li
>Priority: Minor
>  Labels: pull-request-available
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> `MD5/SHA1` functions are common UDFs in many SQL engines. We may support them 
> in SQL just like `from_base64`/`to_base64`.
>  
> - MySQL: https://dev.mysql.com/doc/refman/8.0/en/encryption-functions.html
> - PostgreSQL: https://www.postgresql.org/docs/current/functions-string.html



--
This message was sent by Atlassian Jira
(v8.3.2#803003)