Class ConditionalFunctions

java.lang.Object
com.couchbase.client.java.query.dsl.functions.ConditionalFunctions

@Experimental
@Public
public class ConditionalFunctions
extends Object
DSL for N1QL Conditional functions (for unknowns and numbers). Conditional functions for unknowns evaluate expressions to determine if the values and formulas meet the specified condition.
Since:
2.2
Author:
Simon Baslé
  • Method Details

    • build

      protected static Expression build​(String operator, Expression expression1, Expression expression2, Expression... others)
    • ifMissing

      public static Expression ifMissing​(Expression expression1, Expression expression2, Expression... others)
      Returned expression results in the first non-MISSING value.
    • ifMissingOrNull

      public static Expression ifMissingOrNull​(Expression expression1, Expression expression2, Expression... others)
      Returned expression results in first non-NULL, non-MISSING value.
    • ifNull

      public static Expression ifNull​(Expression expression1, Expression expression2, Expression... others)
      Returned expression results in first non-NULL value. Note that this function might return MISSING if there is no non-NULL value.
    • missingIf

      public static Expression missingIf​(Expression expression1, Expression expression2)
      Returned expression results in MISSING if expression1 = expression2, otherwise returns expression1. Returns MISSING or NULL if either input is MISSING or NULL..
    • nullIf

      public static Expression nullIf​(Expression expression1, Expression expression2)
      Returned expression results in NULL if expression1 = expression2, otherwise returns expression1. Returns MISSING or NULL if either input is MISSING or NULL..
    • ifInf

      public static Expression ifInf​(Expression expression1, Expression expression2, Expression... others)
      Returned expression results in first non-MISSING, non-Inf number. Returns MISSING or NULL if a non-number input is encountered first.
    • ifNaN

      public static Expression ifNaN​(Expression expression1, Expression expression2, Expression... others)
      Returned expression results in first non-MISSING, non-NaN number. Returns MISSING or NULL if a non-number input is encountered first
    • ifNaNOrInf

      public static Expression ifNaNOrInf​(Expression expression1, Expression expression2, Expression... others)
      Returned expression results in first non-MISSING, non-Inf, or non-NaN number. Returns MISSING or NULL if a non-number input is encountered first.
    • nanIf

      public static Expression nanIf​(Expression expression1, Expression expression2)
      Returned expression results in NaN if expression1 = expression2, otherwise returns expression1. Returns MISSING or NULL if either input is MISSING or NULL.
    • negInfIf

      public static Expression negInfIf​(Expression expression1, Expression expression2)
      Returned expression results in NegInf if expression1 = expression2, otherwise returns expression1. Returns MISSING or NULL if either input is MISSING or NULL.
    • posInfIf

      public static Expression posInfIf​(Expression expression1, Expression expression2)
      Returned expression results in PosInf if expression1 = expression2, otherwise returns expression1. Returns MISSING or NULL if either input is MISSING or NULL.