View a markdown version of this page

CASE_OPERATION - AWS Glue DataBrew Guida per gli sviluppatori

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

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.

Esempio 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

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

Tipo di colonna Condizione ValueExpression Con Expressions Valore restituito

Numerico

Somma

`:sum.column.1`

[ { "name": "sum.column.1", "value": "sum(`column.1`)", "type": "aggregate" } ]

Restituisce la somma di column.1

Media

`:mean.column.1`

[ { "name": "mean.column.1", "value": "avg(`column.1`)", "type": "aggregate" } ]

Restituisce la media di column.1

Deviazione media assoluta

`:deviazione assoluta media.column.1`

[ { "name": "meanabsolutedeviation.column.1", "value": "mean_absolute_deviation(`column.1`)", "type": "aggregate" } ]

Restituisce la deviazione media assoluta di column.1

Mediana

`:median.column.1`

[ { "name": "median.column.1", "value": "median(`column.1`)", "type": "aggregate" } ]

Restituisce la mediana di column.1

Prodotto

`:product.column.1`

[ { "name": "product.column.1", "value": "product(`column.1`)", "type": "aggregate" } ]

Restituisce il prodotto di column.1

Deviazione standard

`:standarddeviation.column.1`

[ { "name": "standarddeviation.column.1", "value": "stddev(`column.1`)", "type": "aggregate" } ]

Restituisce la deviazione standard di column.1

Varianza

`:variance.column.1`

[ { "name": "variance.column.1", "value": "variance(`column.1`)", "type": "aggregate" } ]

Restituisce la varianza di column.1

Errore standard di media

`:standarderrorofmean.column.1`

[ { "name": "standarderrorofmean.column.1", "value": "standard_error_of_mean(`column.1`)", "type": "aggregate" } ]

Restituisce l'errore standard della media di column.1

Asimmetria

`:skewness.column.1`

[ { "name": "skewness.column.1", "value": "skewness(`column.1`)", "type": "aggregate" } ]

Restituisce l'asimmetria di column.1

Curtosi

`:curtosis.column.1`

[ { "name": "kurtosis.column.1", "value": "kurtosis(`column.1`)", "type": "aggregate" } ]

Restituisce la curtosi di column.1

Datetime/Numeric/Text

Conteggio

`:count.column.1`

[ { "name": "count.column.1", "value": "count(`column.1`)", "type": "aggregate" } ]

Restituisce il numero totale di righe in column.1

Conteggio distinto

`:countdistinct.column.1`

[ { "name": "count.column.1", "value": "count(distinct `column.1`)", "type": "aggregate" } ]

Restituisce il numero totale di righe distinte in column.1

Min

`:min.column.1`

[ { "name": "min.column.1", "value": "min(`column.1`)", "type": "aggregate" } ]

Restituisce il valore minimo di column.1

Max

`:max.column.1`

[ { "name": "max.column.1", "value": "max(`column.1`)", "type": "aggregate" } ]

Restituisce il valore massimo di column.1

Condizioni valide in una ValueExpression

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

Tipo di colonna Condizione ValueExpression Description

Stringa

Contiene

contiene (`colonna`, 'testo')

Condizione per verificare se il valore nella colonna contiene testo

Non contiene

! contiene (`colonna`, 'testo')

Condizione per verificare se il valore nella colonna non contiene testo

Corrispondenze

match (`column`, 'pattern')

Condizione per verificare se il valore nella colonna corrisponde al modello

Non corrisponde

! corrispondenze (`colonna`, 'modello')

Condizione per verificare se il valore nella colonna non corrisponde al modello

Inizia con

startsWith (`column`, 'text')

Condizione per verificare se il valore nella colonna inizia con testo

Non inizia con

! startsWith (`column`, 'text')

Condizione per verificare se il valore nella colonna non inizia con il testo

Ends with

EndsWith (`column`, 'text')

Condizione per verificare se il valore nella colonna termina con testo

Non termina con

! EndsWith (`colonna`, 'testo')

Condizione per verificare se il valore nella colonna non termina con il testo

Numerico

Less than

`colonna` < numero

Condizione per verificare se il valore nella colonna è inferiore al numero

Minore o uguale a

`colonna` <= numero

Condizione per verificare se il valore nella colonna è minore o uguale al numero

Greater than

`colonna` > numero

Condizione per verificare se il valore nella colonna è maggiore del numero

Maggiore o uguale a

`colonna` >= numero

Condizione per verificare se il valore nella colonna è maggiore o uguale al numero

È compreso tra

isBetween (`column`, minNumber, maxNumber)

Condizione per verificare se il valore nella colonna è compreso tra minNumber e maxNumber

Non è compreso tra

! isBetween (`column`, minNumber, maxNumber)

Condizione per verificare se il valore nella colonna non è compreso tra minNumber e maxNumber

Booleano

È vero

`column` = VERO

Condizione per verificare se il valore nella colonna è booleano TRUE

È falso

`column` = FALSE

Condizione per verificare se il valore nella colonna è booleano FALSE

Date/Timestamp

Prima di

`colonna` < 'data'

Condizione per verificare se il valore nella colonna è precedente alla data

Anteriore o uguale a

`colonna` <= 'data'

Condizione per verificare se il valore nella colonna è precedente o uguale alla data

Più tardi di

`colonna` > 'data'

Condizione per verificare se il valore nella colonna è successivo alla data

Successivo o uguale a

`colonna` >= 'data'

Condizione per verificare se il valore nella colonna è successivo o uguale alla data

String/Numeric/Date/Timestamp

È esattamente

`column` = 'valore'

Condizione per verificare se il valore nella colonna è esattamente il valore

Is not (Non è)

`colonna`! = 'valore'

Condizione per verificare se il valore nella colonna non è un valore

Manca

Manca (`colonna`)

Condizione per verificare se manca il valore nella colonna

Non manca

! manca (`colonna`)

Condizione per verificare se il valore nella colonna non manca

È valido

isValid (`column`, tipo di dati)

Condizione per verificare se il valore nella colonna è valido (il valore è di tipo dati o può essere convertito in tipo di dati)

Non è valido

! isValid (`column`, tipo di dati)

Condizione per verificare se il valore nella colonna non è valido (il valore è di tipo dati o può essere convertito in tipo di dati)

Annidato

Manca

Manca (`colonna`)

Condizione per verificare se manca il valore nella colonna

Non manca

! manca (`colonna`)

Condizione per verificare se il valore nella colonna non manca

È valido

isValid (`column`, tipo di dati)

Condizione per verificare se il valore nella colonna è valido (il valore è di tipo dati o può essere convertito in tipo di dati)

Non è valido

! isValid (`column`, tipo di dati)

Condizione per verificare se il valore nella colonna non è valido (il valore è di tipo dati o può essere convertito in tipo di dati)