TapHome

Sortierung

Sortierfunktionen der TapHome-Skriptsprache — ORDER, ORDERINDEX sowie deren STRICT- und absteigende Varianten zum Sortieren von Werten oder Zurückgeben von Sortierindizes.

Es gibt mehrere ORDER-Varianten:

Aufsteigend

  • ORDER, ORDERSTRICT
  • ORDERINDEX, ORDERINDEXSTRICT

Absteigend

  • ORDERDESC, ORDERDESCSTRICT
  • ORDERINDEXDESC, ORDERINDEXDESCSTRICT

ORDER

Die ORDER-Funktion sortiert die bereitgestellten Eingabewerte aufsteigend und gibt sie in einer neuen Sammlung zurück. Sie akzeptiert n Werte (bis zu 100 Argumente) oder eine einzelne Sammlung. Werte müssen nicht numerisch sein, aber sie müssen vergleichbar sein (z. B. Zahlen, TIMESPAN, DATETIME, Zeichenketten). Mischtypen (z. B. Zahlen und Zeichenketten) sind nicht erlaubt. NaN- und NULL-Werte werden ignoriert und aus der zurückgegebenen Sammlung ausgeschlossen.

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

Beispiele:

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

Die ORDERINDEX-Funktion sortiert die bereitgestellten Eingabewerte aufsteigend, ähnlich wie ORDER. Statt der sortierten Werte wird jedoch eine Sammlung von Indizes zurückgegeben, die die Positionen der ursprünglichen Werte in der sortierten Reihenfolge anzeigen. Sie akzeptiert n Werte (bis zu 100 Argumente) oder eine einzelne Sammlung. Werte müssen nicht numerisch sein, aber sie müssen vergleichbar sein. Mischtypen sind nicht erlaubt. NaN- und NULL-Werte werden ignoriert und aus der zurückgegebenen Sammlung ausgeschlossen.

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

Beispiele:

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

Die ORDERSTRICT-Funktion sortiert die bereitgestellten Eingabewerte aufsteigend und gibt sie in einer neuen Sammlung zurück. Sie akzeptiert n Werte (bis zu 100 Argumente) oder eine einzelne Sammlung. Werte müssen nicht numerisch sein, aber sie müssen vergleichbar sein. Mischtypen sind nicht erlaubt. NaN- und NULL-Werte werden eingeschlossen und immer zuerst im Ergebnis sortiert.

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

Beispiele:

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

Die ORDERINDEXSTRICT-Funktion sortiert die bereitgestellten Eingabewerte aufsteigend, ähnlich wie ORDERSTRICT. Anstelle der sortierten Werte wird jedoch eine Sammlung von Indizes zurückgegeben, die die Positionen der ursprünglichen Werte in der sortierten Reihenfolge anzeigen. Sie akzeptiert n Werte (bis zu 100 Argumente) oder eine einzelne Sammlung. Werte müssen nicht numerisch sein, aber sie müssen vergleichbar sein. Mischtypen sind nicht erlaubt. NaN- und NULL-Werte werden eingeschlossen und immer zuerst im Ergebnis sortiert.

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

Beispiele:

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

Die ORDERDESC-Funktion sortiert die bereitgestellten Eingabewerte absteigend und gibt sie in einer neuen Sammlung zurück. Sie akzeptiert n Werte (bis zu 100 Argumente) oder eine einzelne Sammlung. Werte müssen nicht numerisch sein, aber sie müssen vergleichbar sein. Mischtypen sind nicht erlaubt. NaN- und NULL-Werte werden ignoriert und aus der zurückgegebenen Sammlung ausgeschlossen.

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

Beispiele:

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

Die ORDERINDEXDESC-Funktion sortiert die bereitgestellten Eingabewerte absteigend, ähnlich wie ORDERDESC. Anstelle der sortierten Werte wird jedoch eine Sammlung von Indizes zurückgegeben, die die Positionen der ursprünglichen Werte in der sortierten Reihenfolge anzeigen. Sie akzeptiert n Werte (bis zu 100 Argumente) oder eine einzelne Sammlung. Werte müssen nicht numerisch sein, aber sie müssen vergleichbar sein. Mischtypen sind nicht erlaubt. NaN- und NULL-Werte werden ignoriert und aus der zurückgegebenen Sammlung ausgeschlossen.

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

Beispiele:

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

Die ORDERDESCSTRICT-Funktion sortiert die bereitgestellten Eingabewerte absteigend und gibt sie in einer neuen Sammlung zurück. Sie akzeptiert n Werte (bis zu 100 Argumente) oder eine einzelne Sammlung. Werte müssen nicht numerisch sein, aber sie müssen vergleichbar sein. Mischtypen sind nicht erlaubt. NaN- und NULL-Werte werden eingeschlossen und immer zuerst im Ergebnis sortiert.

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

Beispiele:

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

Die ORDERINDEXDESCSTRICT-Funktion sortiert die bereitgestellten Eingabewerte absteigend, ähnlich wie ORDERDESCSTRICT. Anstelle der sortierten Werte wird jedoch eine Sammlung von Indizes zurückgegeben, die die Positionen der ursprünglichen Werte in der sortierten Reihenfolge anzeigen. Sie akzeptiert n Werte (bis zu 100 Argumente) oder eine einzelne Sammlung. Werte müssen nicht numerisch sein, aber sie müssen vergleichbar sein. Mischtypen sind nicht erlaubt. NaN- und NULL-Werte werden eingeschlossen und immer zuerst im Ergebnis sortiert.

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

Beispiele:

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}