获取数据: select()

用SELECT执行垂直过滤.

const { data, error } = await supabase
  .from('cities')
  .select()

参数

  • columns required string

    要检索的列,用逗号分隔.
  • 已命名的参数 required object

      属性
    • head required boolean

      当设置为真时,选择将使数据无效.
    • count required null | exact | planned | estimated

      用于对表中的行进行计数的计数算法

    提示

    • 默认情况下,Supabase 项目将返回最多 1,000 行。此设置可以更改项目 API 设置。建议您将其保持在较低水平以限制意外或恶意请求的负载大小。您可以使用range()查询对数据进行分页。
    • select() 可以和 Modifiers 搭配使用
    • select() 可以和 Filters 搭配使用

    例子

    获取您的数据

    const { data, error } = await supabase
      .from('cities')
      .select()
    

    选择特定的列

    您可以从表格中选择特定字段.

    const { data, error } = await supabase
      .from('cities')
      .select('name')
    

    查询外部表

    如果您的数据库表有关联,也可以查询其相关联的表

    const { data, error } = await supabase
      .from('countries')
      .select(`
        name,
        cities (
          name
        )
      `)
    

    多次查询同一个外部表

    有时您需要查询同一个外部表两次。在这种情况下,您可以使用连接列的名称来确定您打算使用哪个连接。为方便起见,您还可以为每一列指定别名。例如,如果我们有一个产品商店,并且我们想同时获取供应商和购买者(都在用户表中)::

    const { data, error } = await supabase
      .from('products')
      .select(`
        id,
        supplier:supplier_id ( name ),
        purchaser:purchaser_id ( name )
      `)
    

    使用 count 选项查询

    您可以使用 count 选项获取行数。 计数选项的允许值为 null, exact, plannedestimated.

    const { data, error, count } = await supabase
      .from('cities')
      .select('name', { count: 'exact' }) // if you don't want to return any rows, you can use { count: 'exact', head: true }
    

    查询json数据

    如果 JSONB 列中有数据,则可以对数据值应用选择和查询过滤器。Postgres 提供了许多 用于查询 JSON 数据的运算符. 另请参阅 PostgREST 文档以获取更多详细信息。

    const { data, error } = await supabase
      .from('users')
      .select(`
        id, name,
        address->street
      `)
      .eq('address->postcode', 90210)
    

    以 CSV 格式返回数据

    默认情况下,数据以 JSON 格式返回,但您也可以请求将其作为逗号分隔值返回。

    const { data, error } = await supabase
      .from('users')
      .select()
      .csv()
    

results matching ""

    No results matching ""