Pick #49403 If the two arrays have the same non-null elements, they are considered overlapping, and the result is 1. If the two arrays have no common non-null elements and either array contains a null element, the result is null. Otherwise, the result is 0. ``` select arrays_overlap([1, 2, 3], [1, null]); -- result should be 1 select arrays_overlap([2, 3], [1, null]); -- result should be null select arrays_overlap([2, 3], [1]); -- result should be 0 ``` ### What problem does this PR solve?
This commit is contained in:
@ -170,6 +170,9 @@ size_t type_index_to_data_type(const std::vector<AnyType>& input_types, size_t i
|
||||
return ret;
|
||||
}
|
||||
desc.children.push_back(sub_desc.type_desc);
|
||||
if (sub_desc.is_nullable) {
|
||||
sub_type = make_nullable(sub_type);
|
||||
}
|
||||
type = std::make_shared<DataTypeArray>(sub_type);
|
||||
return ret + 1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user