Udostępnij za pośrednictwem


array_iff()

Dotyczy: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Funkcja iif mądry element na tablicach dynamicznych.

Funkcje array_iff() i array_iif() są równoważne

Składnia

array_iff(condition_array, when_true, when_false)

Dowiedz się więcej na temat konwencji składni.

Parametry

Nazwisko Type Wymagania opis
condition_array dynamic ✔️ Tablica wartości logicznych lub liczbowych.
when_true dynamiczny lub skalarny ✔️ Tablica wartości lub wartości pierwotnych. Będzie to wynik, gdy condition_array ma wartość true.
when_false dynamiczny lub skalarny ✔️ Tablica wartości lub wartości pierwotnych. Będzie to wynik, gdy condition_array ma wartość false.

Uwaga

  • Długość wartości zwracanej będzie taka sama jak wartość wejściowa condition_array.
  • Wartości warunku liczbowego są brane pod uwagę true , jeśli nie są równe 0.
  • Wartości warunku nieliczbowego i nielogicznego będą mieć wartość null w odpowiednim indeksie wartości zwracanej.
  • Jeśli when_true lub when_false jest krótszy niż condition_array, brakujące wartości będą traktowane jako null.

Zwraca

Zwraca tablicę dynamiczną wartości pobranych z when_true lub when_false wartości tablicy zgodnie z odpowiednią wartością tablicy warunku.

Przykłady

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)

Wyjście

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

Wartości warunku liczbowego

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

Wyjście

condition if_true if_false res
[1, 0, 50] tak nie [Tak, nie, tak]

Wartości warunku nieliczbowego i nielogicznego

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)

Wyjście

condition if_true if_false res
[true, false, true] 1 0 [null, null, null]

Niedopasowane długości tablicy

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)

Wyjście

condition if_true if_false res
[true, true, true] [1, 2] [3, 4] [1, 2, null]