Waddler SQL identifier
This guide assumes familiarity with:
sql.identifier
lets you conveniently pass identifiers to SQL query with automatic escaping:
await sql`select * from ${sql.identifier("users")}`;
await sql`select ${sql.identifier("id")} from ${sql.identifier("users")}`;
await sql`select ${sql.identifier(["id", "name", "email"])} from ${sql.identifier("users")}`;
select * from `users`;
select `id` from `users`;
select `id`, `name`, `email` from `users`;
You can explicitely provide schema
, table
and column
to the query:
tables
columns
columns and tables
const users = sql.identifier({ schema: "public", table: "users" });
await sql`select * from ${users}`;
select * from `public`.`users`;
SQL identifier has support for as
:
const table = sql.identifier({ schema: "public", table: "users", as: "u" })
const id = sql.identifier({ table: "u", column: "id", as: "userId" });
await sql`select ${columns} from ${table}`;
select `u`.`id` as `userId` from `public`.`users` `u`;