Queries

Full-text search

Learn how to search text fields with Prisma Client using your database's native full-text search support.

Prisma Client supports full-text search for MySQL and for PostgreSQL with the fullTextSearchPostgres preview feature.

Enabling full-text search for PostgreSQL

Add the preview flag to your generator and re-generate Prisma Client:

schema.prisma
generator client {
  provider        = "prisma-client"
  output          = "./generated"
  previewFeatures = ["fullTextSearchPostgres"]
}
npx prisma generate

Search within a text field

const posts = await prisma.post.findMany({
  where: {
    body: {
      search: "cat | dog",
    },
  },
});

Sort by relevance

Prisma Client also supports relevance-based ordering on supported databases:

const posts = await prisma.post.findMany({
  orderBy: {
    _relevance: {
      fields: ["title"],
      search: "database",
      sort: "desc",
    },
  },
});

On this page