Spark-compatible `mod` function In ANSI mode, division by zero throws an error. In legacy mode, division by zero returns NULL (Spark behavior).
(
args: &[ColumnarValue],
enable_ansi_mode: bool,
)
| 56 | /// In ANSI mode, division by zero throws an error. |
| 57 | /// In legacy mode, division by zero returns NULL (Spark behavior). |
| 58 | pub fn spark_mod( |
| 59 | args: &[ColumnarValue], |
| 60 | enable_ansi_mode: bool, |
| 61 | ) -> Result<ColumnarValue> { |
| 62 | assert_eq_or_internal_err!(args.len(), 2, "mod expects exactly two arguments"); |
| 63 | let args = ColumnarValue::values_to_arrays(args)?; |
| 64 | let result = try_rem(&args[0], &args[1], enable_ansi_mode)?; |
| 65 | Ok(ColumnarValue::Array(result)) |
| 66 | } |
| 67 | |
| 68 | /// Spark-compatible `pmod` function |
| 69 | /// In ANSI mode, division by zero throws an error. |
searching dependent graphs…