Skip to main content
Module

x/kysely_deno_postgres_dialect/mod.ts>kysely.InsertQueryBuilder#expression

Kysely dialect for PostgreSQL using the deno-postgres client.
Latest
method kysely.InsertQueryBuilder.prototype.expression
Re-export
import { kysely } from "https://deno.land/x/kysely_deno_postgres_dialect@v0.27.1/mod.ts";
const { InsertQueryBuilder } = kysely;

Insert an arbitrary expression. For example the result of a select query.

Examples

You can create an INSERT INTO SELECT FROM query using the expression method:

const result = await db.insertInto('person')
  .columns(['first_name', 'last_name', 'age'])
  .expression((eb) => eb
    .selectFrom('pet')
    .select((eb) => [
      'pet.name',
      eb.val('Petson').as('last_name'),
      eb.lit(7).as('age'),
    ])
  )
  .execute()

The generated SQL (PostgreSQL):

insert into "person" ("first_name", "last_name", "age")
select "pet"."name", $1 as "last_name", 7 as "age from "pet"

Parameters

expression: ExpressionOrFactory<DB, TB, any>