TapHome

Sortare

Funcțiile de sortare din scriptul TapHome: ORDER, ORDERINDEX și variantele lor STRICT și descrescătoare, pentru sortarea valorilor sau returnarea indicilor în ordinea sortată.

Există mai multe variante ORDER disponibile:

  • Crescător
    • ORDER, ORDERSTRICT
    • ORDERINDEX, ORDERINDEXSTRICT
  • Descrescător
    • ORDERDESC, ORDERDESCSTRICT
    • ORDERINDEXDESC, ORDERINDEXDESCSTRICT

ORDER

Funcția ORDER sortează valorile de intrare furnizate în ordine crescătoare și le returnează într-o colecție nouă. Acceptă n valori (până la 100 de argumente) sau o singură colecție. Valorile nu trebuie să fie neapărat numerice, dar trebuie să fie comparabile (de ex. numere, TIMESPAN, DATETIME, șiruri de caractere). Tipurile mixte (de ex. numere și șiruri de caractere) nu sunt permise. Valorile NaN și NULL sunt ignorate și excluse din colecția returnată.

ORDER( n1, n2, n3 , … )
ORDER( collection )

Exemple:

ORDER(3, 1, 2)				= {1, 2, 3}
ORDER(1)					= {1}
ORDER(3, NaN, 2, NaN)		= {2, 3}
ORDER(NaN)					= {}
ORDER('Z', 'a', 'X')				= {'X', 'Z', 'a'}
ORDER("str1", "STR2", "stR1") 		= {"STR2", "stR1", "str1"}
ORDER("str1", NULL, "STR2", "stR1") = {"STR2", "stR1", "str1"}

ORDER(TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99))	= {TIMESPAN(0,0,0,0,99), TIMESPAN(0,0,0,0,100)}
ORDER(NULL, TIMESPAN(0,0,0,0,99))					= {TIMESPAN(0,0,0,0,99)}

ORDERINDEX

Funcția ORDERINDEX sortează valorile de intrare furnizate în ordine crescătoare, similar cu funcția ORDER. Totuși, în loc să returneze valorile sortate, returnează o colecție de indici care arată pozițiile valorilor originale în ordinea sortată. Acceptă n valori (până la 100 de argumente) sau o singură colecție. Valorile nu trebuie să fie neapărat numerice, dar trebuie să fie comparabile (de ex. numere, TIMESPAN, DATETIME, șiruri de caractere). Tipurile mixte (de ex. numere și șiruri de caractere) nu sunt permise. Valorile NaN și NULL sunt ignorate și excluse din colecția returnată.

ORDERINDEX( n1, n2, n3 , … )
ORDERINDEX( collection )

Exemple:

ORDERINDEX(3, 1, 2)				= {1, 2, 0}
ORDERINDEX(1)					= {0}
ORDERINDEX(3, NaN, 2, NaN)		= {2, 0}
ORDERINDEX(NaN)					= {}
ORDERINDEX('Z', 'a', 'X')				= {2, 0, 1}
ORDERINDEX("str1", "STR2", "stR1") 		= {1, 2, 0}
ORDERINDEX("str1", NULL, "STR2", "stR1") = {2, 3, 0}

ORDERINDEX(TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99))	= {1, 0}
ORDERINDEX(NULL, TIMESPAN(0,0,0,0,99))					= {1}

ORDERSTRICT

Funcția ORDERSTRICT sortează valorile de intrare furnizate în ordine crescătoare și le returnează într-o colecție nouă. Acceptă n valori (până la 100 de argumente) sau o singură colecție. Valorile nu trebuie să fie neapărat numerice, dar trebuie să fie comparabile (de ex. numere, TIMESPAN, DATETIME, șiruri de caractere). Tipurile mixte (de ex. numere și șiruri de caractere) nu sunt permise. Valorile NaN și NULL sunt incluse și apar întotdeauna primele în rezultat.

ORDERSTRICT( n1, n2, n3 , … )
ORDERSTRICT( collection )

Exemple:

ORDERSTRICT(3, 1, 2)			= {1, 2, 3}
ORDERSTRICT(1)					= {1}
ORDERSTRICT(3, NaN, 2, NaN)		= {NaN, NaN, 2, 3}
ORDERSTRICT(NaN)				= {NaN}
ORDERSTRICT('Z', 'a', 'X')		= {'X', 'Z', 'a'}
ORDERSTRICT("str1", "STR2", "stR1") 		= {"STR2", "stR1", "str1"}
ORDERSTRICT("str1", NULL, "STR2", "stR1")	= {NULL, "STR2", "stR1", "str1"}

ORDERSTRICT(TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99))	= {TIMESPAN(0,0,0,0,99), TIMESPAN(0,0,0,0,100)}
ORDERSTRICT(NULL, TIMESPAN(0,0,0,0,99))					= {NULL, TIMESPAN(0,0,0,0,99)}

ORDERINDEXSTRICT

Funcția ORDERINDEXSTRICT sortează valorile de intrare furnizate în ordine crescătoare, similar cu funcția ORDERSTRICT. Totuși, în loc să returneze valorile sortate, returnează o colecție de indici care arată pozițiile valorilor originale în ordinea sortată. Acceptă n valori (până la 100 de argumente) sau o singură colecție. Valorile nu trebuie să fie neapărat numerice, dar trebuie să fie comparabile (de ex. numere, TIMESPAN, DATETIME, șiruri de caractere). Tipurile mixte (de ex. numere și șiruri de caractere) nu sunt permise. Valorile NaN și NULL sunt incluse și apar întotdeauna primele în rezultat.

ORDERINDEXSTRICT( n1, n2, n3 , … )
ORDERINDEXSTRICT( collection )

Exemple:

ORDERINDEXSTRICT(3, 1, 2)				= {1, 2, 0}
ORDERINDEXSTRICT(1)						= {0}
ORDERINDEXSTRICT(3, NaN, 2, NaN)		= {1, 3, 2, 0}
ORDERINDEXSTRICT(NaN)					= {0}
ORDERINDEXSTRICT('Z', 'a', 'X')			= {2, 0, 1}
ORDERINDEXSTRICT("str1", "STR2", "stR1") 			= {1, 2, 0}
ORDERINDEXSTRICT("str1", NULL, "STR2", "stR1") 		= {1, 2, 3, 0}

ORDERINDEXSTRICT(TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99))	= {1, 0}
ORDERINDEXSTRICT(NULL, TIMESPAN(0,0,0,0,99))						= {0, 1}

ORDERDESC

Funcția ORDERDESC sortează valorile de intrare furnizate în ordine descrescătoare și le returnează într-o colecție nouă. Acceptă n valori (până la 100 de argumente) sau o singură colecție. Valorile nu trebuie să fie neapărat numerice, dar trebuie să fie comparabile (de ex. numere, TIMESPAN, DATETIME, șiruri de caractere). Tipurile mixte (de ex. numere și șiruri de caractere) nu sunt permise. Valorile NaN și NULL sunt ignorate și excluse din colecția returnată.

ORDERDESC( n1, n2, n3 , … )
ORDERDESC( collection )

Exemple:

ORDERDESC(3, 1, 2)					= {3, 2, 1}
ORDERDESC(1)						= {1}
ORDERDESC(3, NaN, 2, NaN)			= {3, 2}
ORDERDESC(NaN)						= {}
ORDERDESC('Z', 'a', 'X')			= {'a', 'Z', 'X'}
ORDERDESC("str1", "STR2", "stR1") 	= {"str1", "stR1", "STR2"}
ORDERDESC("str1", NULL, "STR2", "stR1") 	= {"str1", "stR1", "STR2"}

ORDERDESC(TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99))	= {TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99)}
ORDERDESC(NULL, TIMESPAN(0,0,0,0,99))					= {TIMESPAN(0,0,0,0,99)}

ORDERINDEXDESC

Funcția ORDERINDEXDESC sortează valorile de intrare furnizate în ordine descrescătoare, similar cu funcția ORDERDESC. Totuși, în loc să returneze valorile sortate, returnează o colecție de indici care arată pozițiile valorilor originale în ordinea sortată. Acceptă n valori (până la 100 de argumente) sau o singură colecție. Valorile nu trebuie să fie neapărat numerice, dar trebuie să fie comparabile (de ex. numere, TIMESPAN, DATETIME, șiruri de caractere). Tipurile mixte (de ex. numere și șiruri de caractere) nu sunt permise. Valorile NaN și NULL sunt ignorate și excluse din colecția returnată.

ORDERINDEXDESC( n1, n2, n3 , … )
ORDERINDEXDESC( collection )

Exemple:

ORDERINDEXDESC(3, 1, 2)				= {0, 2, 1}
ORDERINDEXDESC(1)					= {0}
ORDERINDEXDESC(3, NaN, 2)			= {0, 2}
ORDERINDEXDESC(NaN)					= {}
ORDERINDEXDESC('Z', 'a', 'X')					= {1, 0, 2}
ORDERINDEXDESC("str1", "STR2", "stR1") 			= {0, 2, 1}
ORDERINDEXDESC("str1", NULL, "STR2", "stR1") 	= {0, 3, 2}

ORDERINDEXDESC(TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99))	= {0, 1}
ORDERINDEXDESC(NULL, TIMESPAN(0,0,0,0,99))					= {1}

ORDERDESCSTRICT

Funcția ORDERDESCSTRICT sortează valorile de intrare furnizate în ordine descrescătoare și le returnează într-o colecție nouă. Acceptă n valori (până la 100 de argumente) sau o singură colecție. Valorile nu trebuie să fie neapărat numerice, dar trebuie să fie comparabile (de ex. numere, TIMESPAN, DATETIME, șiruri de caractere). Tipurile mixte (de ex. numere și șiruri de caractere) nu sunt permise. Valorile NaN și NULL sunt incluse și apar întotdeauna primele în rezultat.

ORDERDESCSTRICT( n1, n2, n3 , … )
ORDERDESCSTRICT( collection )

Exemple:

ORDERDESCSTRICT(3, 1, 2)			= {3, 2, 1}
ORDERDESCSTRICT(1)					= {1}
ORDERDESCSTRICT(3, NaN, 2, NaN		= {NaN, NaN, 3, 2}
ORDERDESCSTRICT(NaN)				= {NaN}
ORDERDESCSTRICT('Z', 'a', 'X')					= {'a', 'Z', 'X'}
ORDERDESCSTRICT("str1", "STR2", "stR1") 		= {"str1", "stR1", "STR2"}
ORDERDESCSTRICT("str1", NULL, "STR2", "stR1") 	= {NULL, "str1", "stR1", "STR2"}

ORDERDESCSTRICT(TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99))	= {TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99)}
ORDERDESCSTRICT(NULL, TIMESPAN(0,0,0,0,99))					= {NULL, TIMESPAN(0,0,0,0,99)}

ORDERINDEXDESCSTRICT

Funcția ORDERINDEXDESCSTRICT sortează valorile de intrare furnizate în ordine descrescătoare, similar cu funcția ORDERDESCSTRICT. Totuși, în loc să returneze valorile sortate, returnează o colecție de indici care arată pozițiile valorilor originale în ordinea sortată. Acceptă n valori (până la 100 de argumente) sau o singură colecție. Valorile nu trebuie să fie neapărat numerice, dar trebuie să fie comparabile (de ex. numere, TIMESPAN, DATETIME, șiruri de caractere). Tipurile mixte (de ex. numere și șiruri de caractere) nu sunt permise. Valorile NaN și NULL sunt incluse și apar întotdeauna primele în rezultat.

ORDERINDEXDESCSTRICT( n1, n2, n3 , … )
ORDERINDEXDESCSTRICT( collection )

Exemple:

ORDERINDEXDESCSTRICT(3, 1, 2)				= {0, 2, 1}
ORDERINDEXDESCSTRICT(1)						= {0}
ORDERINDEXDESCSTRICT(3, NaN, 2, NaN)		= {1, 3, 0, 2}
ORDERINDEXDESCSTRICT(NaN)					= {0}
ORDERINDEXDESCSTRICT('Z', 'a', 'X')			= {1, 0, 2}
ORDERINDEXDESCSTRICT("str1", "STR2", "stR1")		= {0, 2, 1}
ORDERINDEXDESCSTRICT("str1", NULL, "STR2", "stR1") 	= {1, 0, 3, 2}

ORDERINDEXDESCSTRICT(TIMESPAN(0,0,0,0,100), TIMESPAN(0,0,0,0,99))	= {0, 1}
ORDERINDEXDESCSTRICT(NULL, TIMESPAN(0,0,0,0,99))						= {0, 1}