flink
flink copied to clipboard
[FLINK-31664][table]Add ARRAY_INTERSECT function
What is the purpose of the change
This is an implementation of ARRAY_INTERSECT function Returns an array of the elements in the intersection of array1 and array2, without duplicates.
Brief change log
ARRAY_INTERSECT for Table API and SQL
Syntax:
ARRAY_INTERSECT(array1, array2)
Arguments:
array: An ARRAY to be handled.
Returns:
Returns an array of the elements in the intersection of array1 and array2, without duplicates.
Examples:
SELECT array_intersect(array(1, 2, 3), array(1, 3, 5));
[1,3]
Verifying this change
CollectionFunctionsITCase
see also:
spark https://spark.apache.org/docs/latest/api/sql/index.html#array_intersect presto https://prestodb.io/docs/current/functions/array.html
Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): (yes / no)
- The public API, i.e., is any changed class annotated with
@Public(Evolving)
: (yes / no) - The serializers: (yes / no / don't know)
- The runtime per-record code paths (performance sensitive): (yes / no / don't know)
- Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (yes / no / don't know)
- The S3 file system connector: (yes / no / don't know)
Documentation
- Does this pull request introduce a new feature? (yes / no)
- If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
CI report:
- 9df9f79cdb7b0849eb621f9538f75b14b0d5ff04 UNKNOWN
- c6e5d3d6ec41572c8a52752c059dfb0963da669c Azure: FAILURE
Bot commands
The @flinkbot bot supports the following commands:-
@flinkbot run azure
re-run the last Azure build
@flinkbot run azure
hi @hanyuzheng7 @dawidwys , i submit pr before, why submit another pr? https://github.com/apache/flink/pull/22629 https://github.com/apache/flink/pull/23959
Hey @liuyongvs I am sorry for the situation we ended up here. You're right we should've checked with you. I admit I have not been careful enough here. Please accept my apologies.
Let's try to solve it now somehow @liuyongvs @hanyuzheng7 @zzzzzzzs How do you all feel if
- @hanyuzheng7 continues with
ARRAY_EXCEPT
. We can reuse parts of the solution inARRAY_INTERSECT
(e.g.ObjectContainer
) We should also first solve the question and apply in both cases - @liuyongvs takes care of
ARRAY_INTERSECT
afterARRAY_EXCEPT
is merged? Both his and @hanyuzheng7 PRs are closest to be completed.
Do all feel okish with such a plan? I know it's not a perfect solution, but I want to find a way out of it.
@dawidwys great plan +1. because my prs do not have people to review. will you have time to help review them?
@dawidwys @liuyongvs Ok
hi @dawidwys will you help review this https://github.com/apache/flink/pull/24526