gpt4 book ai didi

mysql - 使用 Loopback 和 MySQL 更正 IS NULL 值的语法

转载 作者:行者123 更新时间:2023-11-29 07:28:23 26 4
gpt4 key购买 nike

我使用 Loopback (v3) 通过 MySQL 数据库管理端点。在我的应用程序中,我使用 Axios 获取端点数据。

在数据库中,我有这样一条记录:

id  name  value   //other columns
1 Sally 0.00
2 Sally 135.00
3 Sally null

我可以在 SQL 中查询每个值:

select * from Tab where name = 'Sally' and value = 0;
select * from Tab where name = 'Sally' and value is null;
select * from Tab where name = 'Sally' and value > 0;

问题:我无法使用应用程序中的 Axios 复制其中一些查询(也无法使用我的 curl 测试)。例如,我只想获取空值,但无法找到“is null”的正确语法以放入环回过滤器。

这是我试过的卷发:

curl -g http://my_ip/api/tabs <-- 按预期工作

curl -g http://my_ip/api/tabs\?filter\[where\]\[value\]\=null <-- 只返回 0 值,不返回任何值空的!

所以,为了只发现空值,我尝试了 this solution :

curl -g http://my_ip/api/tabs\?filter\[where\]\[value\]\[eq\]\=null | jq .

它返回一个错误(无论如何,我在 loopback docs 提供的列表中找不到“eq”运算符。

我如何通过环回获得不同的 0 和空值,复制我在 MySQL 中直接获得的值?有没有办法用 Loopback 制作一个“is null”过滤器?

最佳答案

免责声明:我是 LoopBack 的合著者和维护者。

查询字符串参数总是一个字符串值,无法判断值 null 是字符串 "null" 还是 JavaScript 关键字

幸运的是,LoopBack 还支持复杂查询字符串参数的 JSON 编码。使用 JSON,可以轻松区分数字、字符串和 null 值。

这是列出所有具有 NULL 值的模型实例的查询:

curl -g 'http://my_ip/api/tabs?filter={"where":{"value":null}}'

如果您在 JavaScript 中构建请求 URL,只需通过 JSON.stringify 将您的 filter 参数从一个对象转换为一个字符串,然后让您的 HTTP 客户端库将 URL -对值进行编码。

这是您将收到的典型请求:

http://my_ip/api/tabs?filter=%7B%22where%22%3A%7B%22value%22%3A%20null%7D%7D

关于mysql - 使用 Loopback 和 MySQL 更正 IS NULL 值的语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52731531/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com