Returns true when row at index `b` has the same ORDER BY key as row at index `a` (used by peer-aware ranking like RANK and PERCENT_RANK).
(
rows: &[(String, serde_json::Value)],
a: usize,
b: usize,
order_by: &[(SqlExpr, bool)],
)
| 68 | /// Returns true when row at index `b` has the same ORDER BY key as row at |
| 69 | /// index `a` (used by peer-aware ranking like RANK and PERCENT_RANK). |
| 70 | pub(super) fn order_keys_equal( |
| 71 | rows: &[(String, serde_json::Value)], |
| 72 | a: usize, |
| 73 | b: usize, |
| 74 | order_by: &[(SqlExpr, bool)], |
| 75 | ) -> bool { |
| 76 | order_by.iter().all(|(expr, _)| { |
| 77 | let va = eval_expr_on_json(expr, &rows[a].1); |
| 78 | let vb = eval_expr_on_json(expr, &rows[b].1); |
| 79 | va == vb |
| 80 | }) |
| 81 | } |
no test coverage detected