[//]: # (title: sortBy) Returns [`DataFrame`](DataFrame.md) with rows sorted by one or several columns. By default, columns are sorted in ascending order with `null` values going first. Available modifiers: * `.desc` — changes column sort order from ascending to descending * `.nullsLast` — forces `null` values to be placed at the end of the order **Related operations**: [](reorderRows.md) See [column selectors](ColumnSelectors.md) for how to select the columns for this operation. ```kotlin df.sortBy { age } df.sortBy { age and name.firstName.desc() } df.sortBy { weight.nullsLast() } ``` ```kotlin df.sortBy("age") df.sortBy { "age" and "name"["firstName"].desc() } df.sortBy { "weight".nullsLast() } ``` ## sortByDesc Returns [`DataFrame`](DataFrame.md) sorted by one or several columns in descending order. See [column selectors](ColumnSelectors.md) for how to select the columns for this operation. ```kotlin df.sortByDesc { age and weight } ``` ```kotlin df.sortByDesc("age", "weight") ``` ## sortWith Returns [`DataFrame`](DataFrame.md) sorted with comparator. ```kotlin df.sortWith { row1, row2 -> when { row1.age < row2.age -> -1 row1.age > row2.age -> 1 else -> row1.name.firstName.compareTo(row2.name.firstName) } } ```