TapHome

Sortiranje

Funkcije sortiranja u skripti TapHome: ORDER, ORDERINDEX i njihove inačice STRICT i silazne inačice za sortiranje vrijednosti ili vraćanje indeksa redoslijeda.

Dostupno je više inačica funkcije ORDER:

  • Uzlazno
    • ORDER, ORDERSTRICT
    • ORDERINDEX, ORDERINDEXSTRICT
  • Silazno
    • ORDERDESC, ORDERDESCSTRICT
    • ORDERINDEXDESC, ORDERINDEXDESCSTRICT

ORDER

Funkcija ORDER sortira zadane ulazne vrijednosti uzlaznim redoslijedom i vraća ih u novoj zbirci. Prima n vrijednosti (do 100 argumenata) ili jednu zbirku. Vrijednosti ne moraju biti brojčane, ali moraju biti usporedive (npr. brojevi, TIMESPAN, DATETIME, nizovi znakova). Miješane vrste (npr. brojevi i nizovi znakova) nisu dopuštene. Vrijednosti NaN i NULL se zanemaruju i ne uključuju se u vraćenu zbirku.

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

Primjeri:

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

Funkcija ORDERINDEX sortira zadane ulazne vrijednosti uzlaznim redoslijedom, slično kao funkcija ORDER. No umjesto sortiranih vrijednosti vraća zbirku indeksa koji pokazuju položaje izvornih vrijednosti u sortiranom redoslijedu. Prima n vrijednosti (do 100 argumenata) ili jednu zbirku. Vrijednosti ne moraju biti brojčane, ali moraju biti usporedive (npr. brojevi, TIMESPAN, DATETIME, nizovi znakova). Miješane vrste (npr. brojevi i nizovi znakova) nisu dopuštene. Vrijednosti NaN i NULL se zanemaruju i ne uključuju se u vraćenu zbirku.

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

Primjeri:

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

Funkcija ORDERSTRICT sortira zadane ulazne vrijednosti uzlaznim redoslijedom i vraća ih u novoj zbirci. Prima n vrijednosti (do 100 argumenata) ili jednu zbirku. Vrijednosti ne moraju biti brojčane, ali moraju biti usporedive (npr. brojevi, TIMESPAN, DATETIME, nizovi znakova). Miješane vrste (npr. brojevi i nizovi znakova) nisu dopuštene. Vrijednosti NaN i NULL uključuju se u rezultat i uvijek se nalaze na početku zbirke.

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

Primjeri:

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

Funkcija ORDERINDEXSTRICT sortira zadane ulazne vrijednosti uzlaznim redoslijedom, slično kao funkcija ORDERSTRICT. No umjesto sortiranih vrijednosti vraća zbirku indeksa koji pokazuju položaje izvornih vrijednosti u sortiranom redoslijedu. Prima n vrijednosti (do 100 argumenata) ili jednu zbirku. Vrijednosti ne moraju biti brojčane, ali moraju biti usporedive (npr. brojevi, TIMESPAN, DATETIME, nizovi znakova). Miješane vrste (npr. brojevi i nizovi znakova) nisu dopuštene. U rezultat se uključuju i indeksi vrijednosti NaN i NULL, koji se uvijek nalaze na početku zbirke.

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

Primjeri:

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

Funkcija ORDERDESC sortira zadane ulazne vrijednosti silaznim redoslijedom i vraća ih u novoj zbirci. Prima n vrijednosti (do 100 argumenata) ili jednu zbirku. Vrijednosti ne moraju biti brojčane, ali moraju biti usporedive (npr. brojevi, TIMESPAN, DATETIME, nizovi znakova). Miješane vrste (npr. brojevi i nizovi znakova) nisu dopuštene. Vrijednosti NaN i NULL se zanemaruju i ne uključuju se u vraćenu zbirku.

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

Primjeri:

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

Funkcija ORDERINDEXDESC sortira zadane ulazne vrijednosti silaznim redoslijedom, slično kao funkcija ORDERDESC. No umjesto sortiranih vrijednosti vraća zbirku indeksa koji pokazuju položaje izvornih vrijednosti u sortiranom redoslijedu. Prima n vrijednosti (do 100 argumenata) ili jednu zbirku. Vrijednosti ne moraju biti brojčane, ali moraju biti usporedive (npr. brojevi, TIMESPAN, DATETIME, nizovi znakova). Miješane vrste (npr. brojevi i nizovi znakova) nisu dopuštene. Vrijednosti NaN i NULL se zanemaruju i ne uključuju se u vraćenu zbirku.

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

Primjeri:

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

Funkcija ORDERDESCSTRICT sortira zadane ulazne vrijednosti silaznim redoslijedom i vraća ih u novoj zbirci. Prima n vrijednosti (do 100 argumenata) ili jednu zbirku. Vrijednosti ne moraju biti brojčane, ali moraju biti usporedive (npr. brojevi, TIMESPAN, DATETIME, nizovi znakova). Miješane vrste (npr. brojevi i nizovi znakova) nisu dopuštene. Vrijednosti NaN i NULL uključuju se u rezultat i uvijek se nalaze na početku zbirke.

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

Primjeri:

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

Funkcija ORDERINDEXDESCSTRICT sortira zadane ulazne vrijednosti silaznim redoslijedom, slično kao funkcija ORDERDESCSTRICT. No umjesto sortiranih vrijednosti vraća zbirku indeksa koji pokazuju položaje izvornih vrijednosti u sortiranom redoslijedu. Prima n vrijednosti (do 100 argumenata) ili jednu zbirku. Vrijednosti ne moraju biti brojčane, ali moraju biti usporedive (npr. brojevi, TIMESPAN, DATETIME, nizovi znakova). Miješane vrste (npr. brojevi i nizovi znakova) nisu dopuštene. U rezultat se uključuju i indeksi vrijednosti NaN i NULL, koji se uvijek nalaze na početku zbirke.

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

Primjeri:

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}