[
https://issues.apache.org/jira/browse/CALCITE-5707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17730345#comment-17730345
]
jackylau edited comment on CALCITE-5707 at 6/8/23 2:54 AM:
-----------------------------------------------------------
i modify the description if issue and pr
{code:java}
// code placeholder
spark: array_contains(array[1, null], null) -> null
flink: array_contains(array[1, null], null) -> true {code}
{code:java}
// flink
public static final BuiltInFunctionDefinition ARRAY_CONTAINS =
BuiltInFunctionDefinition.newBuilder()
.name("ARRAY_CONTAINS")
.kind(SCALAR)
.inputTypeStrategy(
sequence(
Arrays.asList("haystack", "needle"),
Arrays.asList(
logical(LogicalTypeRoot.ARRAY),
ARRAY_ELEMENT_ARG)))
.outputTypeStrategy(
nullableIfArgs(
ConstantArgumentCount.of(0),
explicit(DataTypes.BOOLEAN())))
.runtimeClass(
"org.apache.flink.table.runtime.functions.scalar.ArrayContainsFunction")
.build();
spark
case class ArrayContains(left: Expression, right: Expression)
extends BinaryExpression with ImplicitCastInputTypes with NullIntolerant with
Predicate
with QueryErrorsBase {
/**
* When an expression inherits this, meaning the expression is null intolerant
(i.e. any null
* input will result in null output). We will use this information during
constructing IsNotNull
* constraints.
*/
trait NullIntolerant extends Expression {code}
was (Author: jackylau):
i modify the description if issue and pr
{code:java}
// code placeholder
spark: array_contains(array[1, null], null) -> null
flink: array_contains(array[1, null], null) -> true {code}
> Add ARRAY_CONTAINS for Spark dialect
> ------------------------------------
>
> Key: CALCITE-5707
> URL: https://issues.apache.org/jira/browse/CALCITE-5707
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Affects Versions: 1.34.0
> Reporter: jackylau
> Assignee: jackylau
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.35.0
>
>
> ARRAY_CONTAINS - Returns true if the array contains the value
> For more details
> [https://spark.apache.org/docs/latest/sql-ref-functions-builtin.html]
> {code:java}
> // code placeholder
> spark: array_contains(array[1, null], null) -> null
> flink: array_contains(array[1, null], null) -> true {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)