tsql
.md

Select Basics

Start every query with db.from(...).

const query = db
	.from("users")
	.where(({ users }) => users.id.gt(10, db.dialect))
	.orderBy(({ users }) => users.createdAt.desc())
	.limit(20)
	.offset(40)
	.select(({ users }) => ({
		id: users.id,
		email: users.email,
	}));

Execute or inspect:

const rows = await query.execute();
const compiled = query.compile();

Core methods

Repeated where

Multiple .where(...) calls are combined with SQL and.

db
	.from("users")
	.where(({ users }) => users.id.gt(10, db.dialect))
	.where(({ users }) => users.email.like("%@example.com", db.dialect));

Typed source object

from("users") gives a projection callback object with one key (users). Each column is an Expr<...> with the correct inferred type.