

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# CASE\_OPERATION
<a name="recipe-actions.CASE_OPERATION"></a>

Crea una nuova colonna, in base al risultato della condizione logica CASE. L'operazione case esamina le condizioni del caso e restituisce un valore quando viene soddisfatta la prima condizione. Quando una condizione è vera, l'operazione interrompe la lettura e restituisce il risultato. Se nessuna condizione è vera, restituisce il valore predefinito.

**Parameters**
+ `valueExpression`— Condizioni.
+ `withExpressions`— Configurazione per risultati aggregati.
+ `targetColumn`— Nome della colonna appena creata.

**Example Esempio**  
  

```
{
  "RecipeStep": {
    "Action": {
      "Operation": "CASE_OPERATION",
      "Parameters": {
        "valueExpression": "case when `column11` < `column.2` then 'result1' when `column2` < 'value2' then 'result2' else 'high' end",
        "targetColumn": "result.column"
      }
    }
  }
}
```

## Funzioni aggregate valide
<a name="valid-aggregate-functions"></a>

La tabella seguente mostra tutte le funzioni aggregate valide che possono essere utilizzate in un'operazione di case.



- ** Numerico **
  - **Condizione:** Somma / **ValueExpression:** `:sum.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "sum.column.1",<br />      "value": "sum(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la somma di `column.1`
  - **Condizione:** Media / **ValueExpression:** `:mean.column.1` / **Con Expressions:**  <pre>[<br />   {    <br />      "name": "mean.column.1",    <br />      "value": "avg(`column.1`)",    <br />      "type": "aggregate"  <br />   }<br />]</pre>  / **Valore restituito:** Restituisce la media di `column.1`
  - **Condizione:** Deviazione media assoluta / **ValueExpression:** `:deviazione assoluta media.column.1` / **Con Expressions:**  <pre>[<br />   {    <br />      "name": "meanabsolutedeviation.column.1",<br />      "value": "mean_absolute_deviation(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la deviazione media assoluta di `column.1`
  - **Condizione:** Mediana / **ValueExpression:** `:median.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "median.column.1",<br />      "value": "median(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la mediana di `column.1`
  - **Condizione:** Prodotto / **ValueExpression:** `:product.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "product.column.1",<br />      "value": "product(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il prodotto di `column.1`
  - **Condizione:** Deviazione standard / **ValueExpression:** `:standarddeviation.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "standarddeviation.column.1",<br />      "value": "stddev(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la deviazione standard di `column.1`
  - **Condizione:** Varianza / **ValueExpression:** `:variance.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "variance.column.1",<br />      "value": "variance(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la varianza di `column.1`
  - **Condizione:** Errore standard di media / **ValueExpression:** `:standarderrorofmean.column.1` / **Con Expressions:**  <pre>[<br />   {<br />   "name": "standarderrorofmean.column.1",<br />   "value": "standard_error_of_mean(`column.1`)",<br />   "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce l'errore standard della media di `column.1`
  - **Condizione:** Asimmetria / **ValueExpression:** `:skewness.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "skewness.column.1",<br />      "value": "skewness(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce l'asimmetria di `column.1`
  - **Condizione:** Curtosi / **ValueExpression:** `:curtosis.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "kurtosis.column.1",<br />      "value": "kurtosis(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la curtosi di `column.1`

- ** Datetime/Numeric/Text **
  - **Condizione:** Conteggio / **ValueExpression:** `:count.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il numero totale di righe in `column.1`
  - **Condizione:** Conteggio distinto / **ValueExpression:** `:countdistinct.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(distinct `column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il numero totale di righe distinte in `column.1`
  - **Condizione:** Min / **ValueExpression:** `:min.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "min.column.1",<br />      "value": "min(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il valore minimo di `column.1`
  - **Condizione:** Max / **ValueExpression:** `:max.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "max.column.1",<br />      "value": "max(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il valore massimo di `column.1`



## Condizioni valide in una ValueExpression
<a name="valid-conditions-table"></a>

La tabella seguente mostra le condizioni supportate e le espressioni di valore che è possibile utilizzare.



- ** Stringa **
  - **Condizione:** Contiene / **ValueExpression:** contiene (`colonna`, 'testo') / **Description:** Condizione per verificare se il valore nella colonna contiene testo
  - **Condizione:** Non contiene / **ValueExpression:** \! contiene (`colonna`, 'testo') / **Description:** Condizione per verificare se il valore nella colonna non contiene testo
  - **Condizione:** Corrispondenze / **ValueExpression:** match (`column`, 'pattern') / **Description:** Condizione per verificare se il valore nella colonna corrisponde al modello
  - **Condizione:** Non corrisponde / **ValueExpression:** \! corrispondenze (`colonna`, 'modello') / **Description:** Condizione per verificare se il valore nella colonna non corrisponde al modello
  - **Condizione:** Inizia con / **ValueExpression:** startsWith (`column`, 'text') / **Description:** Condizione per verificare se il valore nella colonna inizia con testo
  - **Condizione:** Non inizia con / **ValueExpression:** \! startsWith (`column`, 'text') / **Description:** Condizione per verificare se il valore nella colonna non inizia con il testo
  - **Condizione:** Ends with / **ValueExpression:** EndsWith (`column`, 'text') / **Description:** Condizione per verificare se il valore nella colonna termina con testo
  - **Condizione:** Non termina con / **ValueExpression:** \! EndsWith (`colonna`, 'testo') / **Description:** Condizione per verificare se il valore nella colonna non termina con il testo

- ** Numerico **
  - **Condizione:** Less than / **ValueExpression:** `colonna` < numero / **Description:** Condizione per verificare se il valore nella colonna è inferiore al numero
  - **Condizione:** Minore o uguale a / **ValueExpression:** `colonna` <= numero / **Description:** Condizione per verificare se il valore nella colonna è minore o uguale al numero
  - **Condizione:** Greater than / **ValueExpression:** `colonna` > numero / **Description:** Condizione per verificare se il valore nella colonna è maggiore del numero
  - **Condizione:** Maggiore o uguale a / **ValueExpression:** `colonna` >= numero / **Description:** Condizione per verificare se il valore nella colonna è maggiore o uguale al numero
  - **Condizione:** È compreso tra / **ValueExpression:** isBetween (`column`, minNumber, maxNumber) / **Description:** Condizione per verificare se il valore nella colonna è compreso tra minNumber e maxNumber
  - **Condizione:** Non è compreso tra / **ValueExpression:** \! isBetween (`column`, minNumber, maxNumber) / **Description:** Condizione per verificare se il valore nella colonna non è compreso tra minNumber e maxNumber

- ** Booleano **
  - **Condizione:** È vero / **ValueExpression:** `column` = VERO / **Description:** Condizione per verificare se il valore nella colonna è booleano TRUE
  - **Condizione:** È falso / **ValueExpression:** `column` = FALSE / **Description:** Condizione per verificare se il valore nella colonna è booleano FALSE

- ** Date/Timestamp **
  - **Condizione:** Prima di / **ValueExpression:** `colonna` < 'data' / **Description:** Condizione per verificare se il valore nella colonna è precedente alla data
  - **Condizione:** Anteriore o uguale a / **ValueExpression:** `colonna` <= 'data' / **Description:** Condizione per verificare se il valore nella colonna è precedente o uguale alla data
  - **Condizione:** Più tardi di / **ValueExpression:** `colonna` > 'data' / **Description:** Condizione per verificare se il valore nella colonna è successivo alla data
  - **Condizione:** Successivo o uguale a / **ValueExpression:** `colonna` >= 'data' / **Description:** Condizione per verificare se il valore nella colonna è successivo o uguale alla data

- **  String/Numeric/Date/Timestamp **
  - **Condizione:** È esattamente / **ValueExpression:** `column` = 'valore' / **Description:** Condizione per verificare se il valore nella colonna è esattamente il valore
  - **Condizione:** Is not (Non è) / **ValueExpression:** `colonna`\! = 'valore' / **Description:** Condizione per verificare se il valore nella colonna non è un valore
  - **Condizione:** Manca / **ValueExpression:** Manca (`colonna`) / **Description:** Condizione per verificare se manca il valore nella colonna
  - **Condizione:** Non manca / **ValueExpression:** \! manca (`colonna`) / **Description:** Condizione per verificare se il valore nella colonna non manca
  - **Condizione:** È valido / **ValueExpression:** isValid (`column`, tipo di dati) / **Description:** Condizione per verificare se il valore nella colonna è valido (il valore è di tipo dati o può essere convertito in tipo di dati)
  - **Condizione:** Non è valido / **ValueExpression:** \! isValid (`column`, tipo di dati) / **Description:** Condizione per verificare se il valore nella colonna non è valido (il valore è di tipo dati o può essere convertito in tipo di dati)

- ** Annidato **
  - **Condizione:** Manca / **ValueExpression:** Manca (`colonna`) / **Description:** Condizione per verificare se manca il valore nella colonna
  - **Condizione:** Non manca / **ValueExpression:** \! manca (`colonna`) / **Description:** Condizione per verificare se il valore nella colonna non manca
  - **Condizione:** È valido / **ValueExpression:** isValid (`column`, tipo di dati) / **Description:** Condizione per verificare se il valore nella colonna è valido (il valore è di tipo dati o può essere convertito in tipo di dati)
  - **Condizione:** Non è valido / **ValueExpression:** \! isValid (`column`, tipo di dati) / **Description:** Condizione per verificare se il valore nella colonna non è valido (il valore è di tipo dati o può essere convertito in tipo di dati)

