You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by GitBox <gi...@apache.org> on 2021/01/01 21:17:43 UTC

[GitHub] [arrow] seddonm1 commented on a change in pull request #9038: ARROW-10356: [Rust][DataFusion] Add support for is_in (WIP)

seddonm1 commented on a change in pull request #9038:
URL: https://github.com/apache/arrow/pull/9038#discussion_r550807996



##########
File path: rust/datafusion/src/logical_plan/expr.rs
##########
@@ -158,6 +158,15 @@ pub enum Expr {
         /// List of expressions to feed to the functions as arguments
         args: Vec<Expr>,
     },
+    /// Returns whether the list contains the expr value.
+    InList {
+        /// The value to compare
+        expr: Box<Expr>,
+        /// The low end of the range
+        list: Vec<Expr>,
+        /// Whether the expression is negated
+        negated: bool,

Review comment:
       Thanks for the comments. I have done some testing with Postgres 13.1 and found that it does not appear to make a difference. These are all equivalent and return `NULL`.
   
   ```sql
   SELECT NOT NULL IN ('a');
   SELECT NULL NOT IN ('a');
   SELECT NOT 'a' IN (NULL);
   SELECT 'a' NOT IN (NULL);
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org