andygrove commented on code in PR #520: URL: https://github.com/apache/datafusion-comet/pull/520#discussion_r1631622607
########## docs/source/user-guide/expressions.md: ########## @@ -19,99 +19,175 @@ # Supported Spark Expressions -The following Spark expressions are currently available: - -- Literals -- Arithmetic Operators - - UnaryMinus - - Add/Minus/Multiply/Divide/Remainder -- Conditional functions - - Case When - - If -- Cast -- Coalesce -- BloomFilterMightContain -- Boolean functions - - And - - Or - - Not - - EqualTo - - EqualNullSafe - - GreaterThan - - GreaterThanOrEqual - - LessThan - - LessThanOrEqual - - IsNull - - IsNotNull - - In -- String functions - - Substring - - Coalesce - - StringSpace - - Like - - Contains - - Startswith - - Endswith - - Ascii - - Bit_length - - Octet_length - - Upper - - Lower - - Chr - - Initcap - - Trim/Btrim/Ltrim/Rtrim - - Concat_ws - - Repeat - - Length - - Reverse - - Instr - - Replace - - Translate -- Bitwise functions - - Shiftright/Shiftleft -- Date/Time functions - - Year/Hour/Minute/Second -- Hash functions - - Md5 - - Sha2 - - Hash - - Xxhash64 -- Math functions - - Abs - - Acos - - Asin - - Atan - - Atan2 - - Cos - - Exp - - Ln - - Log10 - - Log2 - - Pow - - Round - - Signum - - Sin - - Sqrt - - Tan - - Ceil - - Floor -- Aggregate functions - - Count - - Sum - - Max - - Min - - Avg - - First - - Last - - BitAnd - - BitOr - - BitXor - - BoolAnd - - BoolOr - - CovPopulation - - CovSample - - VariancePop - - VarianceSamp - - StddevPop - - StddevSamp - - Corr +The following Spark expressions are currently available. Any known compatibility issues are noted in the following tables. + +## Literal Values + +| Expression | Notes | +| -------------------------------------- | ----- | +| Literal values of supported data types | | + +## Unary Arithmetic + +| Expression | Notes | +| ---------------- | ----- | +| UnaryMinus (`-`) | | + +## Binary Arithmeticx + +| Expression | Notes | +| --------------- | --------------------------------------------------- | +| Add (`+`) | | +| Subtract (`-`) | | +| Multiply (`*`) | | +| Divide (`/`) | | +| Remainder (`%`) | Comet produces `NaN` instead of `NULL` for `% -0.0` | + +## Conditional Expressions + +| Expression | Notes | +| ---------- | ----- | +| CaseWhen | | +| If | | + +## Comparison + +| Expression | Notes | +| ------------------------- | ----- | +| EqualTo (`=`) | | +| EqualNullSafe (`<=>`) | | +| GreaterThan (`>`) | | +| GreaterThanOrEqual (`>=`) | | +| LessThan (`<`) | | +| LessThanOrEqual (`<=`) | | +| IsNull (`IS NULL`) | | +| IsNotNull (`IS NOT NULL`) | | +| In (`IN`) | | + +## String Functions + +| Expression | Notes | +| --------------- | ----------------------------------------------------------------------------------------------------------- | +| Ascii | | +| BitLength | | +| Chr | | +| ConcatWs | | +| Contains | | +| EndsWith | | +| InitCap | | +| Instr | | +| Length | | +| Like | | +| Lower | | +| OctetLength | | +| Repeat | Negative argument for number of times to repeat causes exception | +| Replace | | +| Reverse | | +| RLike | Disabled by default. Uses Rust regular expression engine which is not compatible with Java's regexp engine. | Review Comment: I have removed this and will add it back in the RLike PR after this one is merged -- 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 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