Skip to main content

.filter()

Finds all rows whose column satisfies the filter.

const { data, error } = await supabase
.from('cities')
.select('name, country_id')
.filter('name', 'in', '("Paris","Tokyo")')

Parameters#

  • columnrequiredobject

    The column to filter on.

  • operatorrequiredFilterOperator

    The operator to filter with.

  • valuerequiredany

    The value to filter with.

Notes#

  • .filter() expects you to use the raw PostgREST syntax for the filter values, so it should only be used as an escape hatch in case other filters don't work.

Examples#

With select()#

const { data, error } = await supabase
.from('cities')
.select('name, country_id')
.filter('name', 'in', '("Paris","Tokyo")')

With update()#

const { data, error } = await supabase
.from('cities')
.update({ name: 'Mordor' })
.filter('name', 'in', '("Paris","Tokyo")')

With delete()#

const { data, error } = await supabase
.from('cities')
.delete()
.filter('name', 'in', '("Paris","Tokyo")')

With rpc()#

// Only valid if the Postgres function returns a table type.
const { data, error } = await supabase
.rpc('echo_all_cities')
.filter('name', 'in', '("Paris","Tokyo")')

Filter embedded resources#

const { data, error } = await supabase
.from('cities')
.select('name, countries ( name )')
.filter('countries.name', 'in', '("France","Japan")')