New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
arrayFold
function
#34155
Comments
Hello,i want to pick this up |
Ok, it's yours. Just to let you know - it's not an easy task.
@amosbird Maybe you can help @roanhe-ts with this task? |
All right ...., I thought it was an easy task ... |
No time limitation. You can spend several months if you want 👍 |
OK, I will try my best. |
@alexey-milovidov hello,I met some problems during this task, could you please help me? First, according to definition of arrayFold, we can have pseudocode like bellow: let acc = init
for (array in array_vector)
{
acc = lambda(array, acc)
}
return acc;
Every time, we got acc of N-element arrays, we need to eliminate some of them from acc column, and construct a new acc column. Because the eliminated acc just got its final result, no more N+1-element arrays can be calculated with them. May be a specific example could help discuss. Say, we have a table foldDemo like this:
the query is like: select arrayFold((x, y, acc) -> (x + acc.1, y + acc.2), array1, array2, (0,0)) from foldDemo
No need to continue the processing. The problem is:
|
See
#21589
#23248
#27270
The text was updated successfully, but these errors were encountered: