我有一个列guests,它包含模式First_Name、Last_Name的JSON数据.每行可以包含多个来宾.

[{"last_name":"One","first_name":"Guest"},
 {"last_name":"Two","first_name":"Guest"}]

我正在try 处理此对象中的数据.在supbase/postgres控制台中,下面的语句给出了预期的结果:

Select *
from bookings
where ((guests -> 0 ->> 'first_name') = 'Guest')

在suabase JS中查询相同内容时,它不会返回任何输出:

let query = supabase.from("bookings")
                    .select()
                    .eq('guests -> 0 ->> first_name', 'Guest');

我错过了什么吗?

此外,用于判断json是否存在且不为空的语句也不起作用:

.not('guests -> 0 ->> first_name','is',null)

我try 了不同的方法,但似乎我以错误的方式处理json对象.

推荐答案

该问题的解决方案是避免字符串中的空格:

.eq('guests->0->>first_name','Guest')

Javascript相关问答推荐

是什么原因导致此Angular 16应用程序中类型错误时属性结果不存在?

如何解决CORS政策的问题

通过嵌套模型对象进行Mongoose搜索

Rehype将hashtag呈现为URL

如何从一个列表中创建一个2列的表?

XSLT处理器未运行

当输入字段无效时,我的应用程序不会返回错误

400 bad request error posting through node-fetch

将Node.js包发布到GitHub包-错误ENEEDAUTH

Vaadin定制组件-保持对javascrip变量的访问

有效路径同时显示有效路径组件和不存在的路径组件

无法检索与Puppeteer的蒸汽游戏的Bundle 包价格

使用API调用的VUE 3键盘输入同步问题

为什么这个最小Angular 的Licial.dev设置不起作用?

有没有办法在R中创建一张具有多个色标的热图?

在Press Reaction本机和EXPO av上播放单个文件

Played link-Initialize.js永远显示加载符号

:host::ng-Deep不将样式应用于material 复选框

如何在底部重叠多个div?

我正在为我的单选按钮在HTML中设置一个值.使用Java脚本,我如何才能获得该值?