FieldIndex — funkcja skryptu i funkcja wykresu
Funkcja FieldIndex() zwraca pozycję wartości pola value w polu field_name (według kolejności ładowania).
Składnia:
FieldIndex(field_name , value)
Typ zwracanych danych: liczba całkowita
Argumenty:
- field_name: Nazwa pola, dla którego wymagany jest indeks. Na przykład kolumna w tabeli. Argument musi być podany jako wartość ciągu znaków. Oznacza to, że nazwa pola musi być ujęta w pojedyncze cudzysłowy.
- value: Wartość w polu field_name.
Ograniczenia:
-
Sortowanie według wartości Y w wykresach albo sortowanie według kolumn wyrażeń w tabelach jest niedozwolone, gdy w dowolnym z wyrażeń wykresu stosowana jest ta funkcja wykresu. W takiej sytuacji te opcje sortowania są automatycznie wyłączone. Kiedy używasz tej funkcji wykresu w wizualizacji albo tabeli, sortowanie wizualizacji zostanie przywrócone do sortowania danych wejściowych tej funkcji. To ograniczenie nie odnosi się do funkcji skryptu, która jest jej odpowiednikiem.
-
Jeśli nie można znaleźć wartości value wśród wartości pola field_name, zwracana jest wartość 0.
Przykłady:
Dodaj poniższe przykładowe dane do dokumentu i uruchom go. W poniższych przykładach stosowane jest pole: First name z tabeli Names.
Przykład | Wynik |
---|---|
Funkcja wykresu — w tabeli zawierającej wymiar First name dodaj jako miarę: FieldIndex ('First name','John') |
1, ponieważ wartość John pojawia się jako pierwsza w kolejności ładowania pola First name. Warto zauważyć, że na liście wartości imię John pojawiłoby się jako drugie od góry, ponieważ podlega sortowaniu alfabetycznemu, nie tak, jak w kolejności ładowania. |
Funkcja wykresu z First name: FieldIndex ('First name','Peter') |
4, ponieważ funkcja FieldIndex() zwraca tylko jedną wartość (pierwsze wystąpienie w kolejności ładowania). |
Funkcja skryptu — przy założeniu, że tabela Names jest załadowana, jak w przykładowych danych: John1: Load FieldIndex('First name','John') as MyJohnPos Resident Names; |
MyJohnPos=1, ponieważ wartość John pojawia się jako pierwsza w kolejności ładowania pola First name. Warto zauważyć, że na liście wartości imię John pojawiłoby się jako drugie od góry, ponieważ podlega sortowaniu alfabetycznemu, nie tak, jak w kolejności ładowania. |
Funkcja skryptu z Names: Peter1: Load FieldIndex('First name','Peter') as MyPeterPos Resident Names; |
MyPeterPos=4, ponieważ funkcja FieldIndex() zwraca tylko jedną wartość (pierwsze wystąpienie w kolejności ładowania). |
Dane zastosowane w przykładzie:
Names:
LOAD * inline [
"First name"|"Last name"|Initials|"Has cellphone"
John|Anderson|JA|Yes
Sue|Brown|SB|Yes
Mark|Carr|MC |No
Peter|Devonshire|PD|No
Jane|Elliot|JE|Yes
Peter|Franc|PF|Yes ] (delimiter is '|');
John1:
Load FieldIndex('First name','John') as MyJohnPos
Resident Names;
Peter1:
Load FieldIndex('First name','Peter') as MyPeterPos
Resident Names;