You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter集成Supabase时使用OR过滤器出现PGRST100解析错误

解决Supabase查询逻辑树解析错误(PGRST100)的方案

你的SQL逻辑是goalType = 'steppingStone' OR (goalOpen = true AND goalType != 'steppingStone'),错误根源是误用了all()函数——Supabase的all()是用于匹配数组包含所有指定元素的操作符,并非用来组合逻辑与的工具。

正确的REST查询语法需要用or()包裹两个条件分支,第二个分支内用and()组合两个子条件,在Flutter的Supabase客户端中代码示例如下:

final response = await supabase
    .from('your_table_name') // 替换为你的表名
    .select()
    .or('goalType.eq.steppingStone,and(goalOpen.eq.true,goalType.neq.steppingStone)');

核心语法规则说明:

  • or(A,B):对应SQL中的A OR B逻辑
  • and(X,Y):对应SQL中的X AND Y逻辑
  • 整体结构完美匹配你需要的A OR (X AND Y)逻辑

另外注意goalType != steppingStone中的字符串引号,REST语法中虽可省略,但建议保持与前一个条件一致的写法,避免潜在的解析异常。

内容的提问来源于stack exchange,提问作者Davout

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 23:20:43