Freigeben über


array_iff()

Gilt für: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Elementweise iif-Funktion auf dynamischen Arrays.

Die array_iff() Funktionen sind array_iif() gleichwertig.

Syntax

array_iff(condition_array, when_true, when_false)

Erfahren Sie mehr über Syntaxkonventionen.

Parameter

Name Type Erforderlich Beschreibung
condition_array dynamic ✔️ Ein Array von booleschen oder numerischen Werten.
when_true dynamisch oder skalar ✔️ Ein Array von Werten oder primitiven Werten. Dies ist das Ergebnis, wenn condition_array wahr ist.
when_false dynamisch oder skalar ✔️ Ein Array von Werten oder primitiven Werten. Dies ist das Ergebnis, wenn condition_array falsch ist.

Hinweis

  • Die Länge des Rückgabewerts entspricht dem Eingabe-condition_array.
  • Numerische Bedingungswerte werden berücksichtigt true , wenn nicht gleich 0.
  • Nicht numerische und nicht boolesche Bedingungswerte sind null im entsprechenden Index des Rückgabewerts.
  • Wenn when_true oder when_false kürzer als condition_array ist, werden fehlende Werte als NULL behandelt.

Gibt zurück

Gibt ein dynamisches Array der Werte zurück, die entweder aus dem when_true oder when_false Arraywerten stammen, entsprechend dem entsprechenden Wert des Bedingungsarrays.

Beispiele

print condition=dynamic([true,false,true]), if_true=dynamic([1,2,3]), if_false=dynamic([4,5,6]) 
| extend res= array_iff(condition, if_true, if_false)

Output

Bedingung if_true if_false res
[true, false, true] [1, 2, 3] [4, 5, 6] [1, 5, 3]

Numerische Bedingungswerte

print condition=dynamic([1,0,50]), if_true="yes", if_false="no" 
| extend res= array_iff(condition, if_true, if_false)

Output

Bedingung if_true if_false res
[1, 0, 50] ja Nein [Ja, Nein, Ja]

Nicht numerische und nicht boolesche Bedingungswerte

print condition=dynamic(["some string value", datetime("01-01-2022"), null]), if_true=1, if_false=0
| extend res= array_iff(condition, if_true, if_false)

Output

Bedingung if_true if_false res
[true, false, true] 1 0 [NULL, NULL, NULL]

Nicht übereinstimmende Arraylängen

print condition=dynamic([true,true,true]), if_true=dynamic([1,2]), if_false=dynamic([3,4]) 
| extend res= array_iff(condition, if_true, if_false)

Output

Bedingung if_true if_false res
[true, true, true] [1, 2] [3, 4] [1, 2, NULL]