Closed moodymudskipper closed 5 years ago
We have to choose if we'd do it the NSE way or not, but i think the way above is better because regular by uses SE and this is not pretty :
safe_left_join(a, b, ~ X(!!ensym(some_var)) > Y("start") & X(!!ensym(some_var)) < Y("end"))
Done! well no optimized "between" but the syntax is simple at least
It's a special type of fuzzy join :
but that might be the most common one, so a special shortcut syntax would be nice, actually it feels like a natural fuzzy join syntax.
The issue is that we don't want to make a cartesian product with the whole data so we have select the appropriate columns only, which would be easy by parsing the formula but would break in 1000s of ways.
OR we create our own syntax for this, using (fake?) functions
X
andY
, and then :Then it's easy and explicit to pass it to fuzzyjoin using the
multi_by
andmulti_match_fun
feature.We can keep
match_fun
to have compatibility with regular fuzzyjoin syntax. so the only thing to do is to first parse this formula and pass all the args to the regular fuzzy_join function