Order By
Learn how to use the orderBy method in tSQL.
The orderBy
clause sorts query results based on one or more columns or expressions. Results can be sorted in ascending (asc
) or descending (desc
) order.
db.selectFrom("users")
.select(["id", "email", "created_at"])
.orderBy("created_at", "desc")
.orderBy("email") // 'asc' by default
.execute();
Multiple Columns
db.selectFrom("users")
.select(["id", "email"])
.orderBy(["created_at desc", "email"])
.execute();
SQL Expressions
import { sql } from "kysely";
db.selectFrom("users")
.select(["id", "first_name", "last_name"])
.orderBy(sql`concat(first_name, ' ', last_name)`)
.execute();
Dynamic Sorting
const { ref } = db.dynamic;
function sortUsers(orderByColumn: string) {
return db
.selectFrom("users")
.select(["id", "email"])
.orderBy(ref(orderByColumn))
.execute();
}