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

ASF GitHub Bot commented on PHOENIX-1661:
-----------------------------------------

Github user petercdc commented on a diff in the pull request:

    https://github.com/apache/phoenix/pull/101#discussion_r35485180
  
    --- Diff: 
phoenix-core/src/main/java/org/apache/phoenix/compile/ExpressionCompiler.java 
---
    @@ -200,12 +224,12 @@ public Expression visitLeave(ComparisonParseNode 
node, List<Expression> children
             Expression lhsExpr = children.get(0);
             Expression rhsExpr = children.get(1);
             PDataType dataTypeOfLHSExpr = lhsExpr.getDataType();
    -        if (dataTypeOfLHSExpr != null && 
!dataTypeOfLHSExpr.isEqualitySupported()) {
    +        if (!(lhsExpr instanceof BaseJSONExpression)&& dataTypeOfLHSExpr 
!= null && !dataTypeOfLHSExpr.isEqualitySupported()) {
    --- End diff --
    
    some operators will return data of other type,and compare to other value. 
    for example: {"k1":10}->'k1'>1
    so I think we need skip checking here.
    



> Implement built-in functions for JSON
> -------------------------------------
>
>                 Key: PHOENIX-1661
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1661
>             Project: Phoenix
>          Issue Type: Sub-task
>            Reporter: James Taylor
>              Labels: JSON, Java, SQL, gsoc2015, mentor
>         Attachments: PhoenixJSONSpecification-First-Draft.pdf
>
>
> Take a look at the JSON built-in functions that are implemented in Postgres 
> (http://www.postgresql.org/docs/9.3/static/functions-json.html) and implement 
> the same for Phoenix in Java following this guide: 
> http://phoenix-hbase.blogspot.com/2013/04/how-to-add-your-own-built-in-function.html
> Examples of functions include ARRAY_TO_JSON, ROW_TO_JSON, TO_JSON, etc. The 
> implementation of these built-in functions will be impacted by how JSON is 
> stored in Phoenix. See PHOENIX-628. An initial implementation could work off 
> of a simple text-based JSON representation and then when a native JSON type 
> is implemented, they could be reworked to be more efficient.



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

Reply via email to