Przeskocz do zawartości głównej

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: integer

Argumenty:  

Argumenty
Argument Opis
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:  

  • Jeśli nie można znaleźć wartości value wśród wartości pola field_name, zwracana jest wartość 0.

  • 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.

Przykłady i wyniki:  

W poniższych przykładach stosowane jest pole: First name z tabeli Names.

Przykłady i wyniki
Przykłady Wyniki

Dodaj przykładowe dane do aplikacji i uruchom ją.

Załadowano tabelę Names, tak jak w danych z próby.

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 w panelu filtrowania imię John pojawiłoby się jako drugie od góry, ponieważ podlega sortowaniu alfabetycznemu, nie tak, jak w kolejności ładowania.

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 danych przykładowych:

 

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 w panelu filtrowania imię John pojawiłoby się jako drugie od góry, ponieważ podlega sortowaniu alfabetycznemu, nie tak, jak w kolejności ładowania.

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;

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!