github.com/mithrandie/csvq@v1.18.1/docs/_posts/2006-01-02-logical-functions.md (about)

     1  ---
     2  layout: default
     3  title: Logical Functions - Reference Manual - csvq
     4  category: reference
     5  ---
     6  
     7  # Logical Functions
     8  
     9  | name | description |
    10  | :- | :- |
    11  | [COALESCE](#coalesce) | Return the first non-null value in arguments |
    12  | [IF](#if) | Return a value by condition |
    13  | [IFNULL](#ifnull) | Return a value whether passed value is null |
    14  | [NULLIF](#nullif) | Return null whether passed values are equal |
    15  
    16  ## Definitions
    17  
    18  ### COALESCE
    19  {: #coalesce}
    20  
    21  ```
    22  COALESCE(value [, value ...])
    23  ```
    24  
    25  _value_
    26  : [value]({{ '/reference/value.html' | relative_url }})
    27  
    28  _return_
    29  : [primitive type]({{ '/reference/value.html#primitive_types' | relative_url }})
    30  
    31  Returns the first non-null _value_ in arguments. If there is no non-null _value_, then returns null.
    32  
    33  ### IF
    34  {: #if}
    35  
    36  ```
    37  IF(condition, value1, value2)
    38  ```
    39  
    40  _condition_
    41  : [value]({{ '/reference/value.html' | relative_url }})
    42  
    43  _value1_
    44  : [value]({{ '/reference/value.html' | relative_url }})
    45  
    46  _value2_
    47  : [value]({{ '/reference/value.html' | relative_url }})
    48  
    49  _return_
    50  : [primitive type]({{ '/reference/value.html#primitive_types' | relative_url }})
    51  
    52  If _condition_ is TRUE, then returns _value1_. Otherwise, returns _value2_.
    53  
    54  ### IFNULL
    55  {: #ifnull}
    56  
    57  ```
    58  IFNULL(value1, value2)
    59  ```
    60  
    61  _value1_
    62  : [value]({{ '/reference/value.html' | relative_url }})
    63  
    64  _value2_
    65  : [value]({{ '/reference/value.html' | relative_url }})
    66  
    67  _return_
    68  : [primitive type]({{ '/reference/value.html#primitive_types' | relative_url }})
    69  
    70  If _value1_ is null, then returns _value2_. Otherwise returns _value1_.
    71  
    72  ### NULLIF
    73  {: #nullif}
    74  
    75  ```
    76  NULLIF(value1, value2)
    77  ```
    78  
    79  _value1_
    80  : [value]({{ '/reference/value.html' | relative_url }})
    81  
    82  _value2_
    83  : [value]({{ '/reference/value.html' | relative_url }})
    84  
    85  _return_
    86  : [primitive type]({{ '/reference/value.html#primitive_types' | relative_url }})
    87  
    88  If _value1_ is equal to _value2_, returns null. Otherwise returns _value1_.
    89