waynexia opened a new issue, #15326:
URL: https://github.com/apache/datafusion/issues/15326

   ### Is your feature request related to a problem or challenge?
   
   There are some gaps between our 
[`Operator`](https://docs.rs/datafusion/latest/datafusion/logical_expr/enum.Operator.html)
 and 
[`BinaryOperator`](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html)
 from sqlparser, where some of them are useful.
   
   This ticket is not intended to align the gap between `Operator` and 
`BinaryOperator`. But to include those might-helpful operators with sqlparser 
as the reference. And further implement some of them (which means leaving 
another part just a placeholder, and even not included).
   
   We can categorize our current `Operator`s into three parts: fully supported 
(like AND/OR), included but not supported (like `@>`) and not included. This 
ticket focuses on extending the first two parts. And for some operators, it may 
take a relatively long time to fully support them. Like those for JSON 
operation. The meaning of listing them here is for rough progress tracking, and 
to push them into the "included but not implemented" stage for downstream 
projects to easily extend their version.
   
   ### Describe the solution you'd like
   
   Here is a table of various operators and their status:
   
   | Operator   | Description | Status  | Tickets |
   |:----------:|:----------|---|---|
   |   
[Arrow](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.Arrow)
    |  (PG) `->` extracts a JSON object field or array element    |  Not 
Included |   |
   |   
[LongArrow](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.LongArrow)
    | (PG)  `->>` extracts a JSON object field or JSON array element and 
converts it to text    |  Not Included |   |
   |   
[HashArrow](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.HashArrow)
   |   (PG) `#>` extracts a JSON sub-object at the specified path   |  Not 
Included |   |
   |   
[HashLongArrow](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.HashLongArrow)
  |  (PG) `#>>` extracts JSON sub-object at the specified path  |  Not Included 
|   |
   |   
[ArrowAt](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.ArrowAt)
  |   (PG) `<@` is used for JSON and text searches  | Included But Not 
Implemented  |   |
   |   
[AtArrow](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.AtArrow)
  |   (PG) `@>` is used for JSON and text searches  | Included But Not 
Implemented  |   |
   |   
[AtAt](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.AtAt)
  |   (PG) `@>` is used for JSON and text searches  | Not Included  |   |
   |   
[XOR](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.XOR)
  |   `a XOR b`. We've implemented `BitwiseXor` and can map this to 
`BitwiseXor` operator  | Not Included  |   |
   | 
[`DIV`](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.MyIntegerDivide)
 or 
[`//`](https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.BinaryOperator.html#variant.DuckIntegerDivide)
 |  (MySQL/DuckDB) Integer division.  | Not Included  |   |
   |   `ALL`   |   `SELECT 1 = ALL(ARRAY[1,1,1,1]);`  | Unparsed  | #2547  |
   
   Feel free to add or modify it
   
   ### Describe alternatives you've considered
   
   _No response_
   
   ### Additional context
   
   Cross-references:
   - https://github.com/apache/datafusion/issues/7308
   - https://github.com/apache/datafusion/issues/14660
   - https://github.com/apache/datafusion/issues/2547


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org
For additional commands, e-mail: github-h...@datafusion.apache.org

Reply via email to