json - 什么是正确的 FilterObject ORDS 语法?
问题描述
我想过滤RestApi ORDS的结果,使用FilterObject通过url发送它,但我找不到如何将多个运算符和或或分组的示例。
如果这种情况下的 FilterObject:
where (codigo like 'DACK%' or codigo like 'DO%')
这是:
{"$or":[{"codigo":{"$like":"DACK%"}},{"codigo":{"$like":"DO%"}}]}
以下示例的语法应该是什么:
WHERE VALOR = 'SUPER'
AND ( CODIGO LIKE 'DACK%'
OR CODIGO LIKE 'DO%' )
ORDER BY CODIGO
我使用 ords 19.1
谢谢
解决方案
“棘手”的部分是 $or..
我将使用 HR.EMPLOYEES 编写一个等效示例,因为我没有您的表。
GET /ords/hr/employees?q={"job_id":{"$eq":"IT_PROG"},"email":{"$or":[{"$like":"AH%25"},{"$like":"%25VPAT%25"}]},"$orderby":{"salary":"desc"}}
等于
SELECT *
FROM EMPLOYEES
WHERE JOB_ID = 'IT_PROG'
AND ( EMAIL LIKE '%VPAT%'
OR EMAIL LIKE 'AH%' )
ORDER BY SALARY DESC
看起来像这样
这是正式记录在这里
推荐阅读
- mysql - RegEx SQL,将已知模式与可变数字结合起来
- mysql - 无法更改 InnoDB 全文最小字长
- python - 构建一个函数以在 Python 中返回整数直到达到 1
- r - 将向量中的单个标题添加到每个 R 图中
- xilinx - Xilinx eprom 刷新失败并出现各种错误
- serverless-framework - 如何从 serverless.yaml 中的打包中排除文件?
- sql - 根据时间范围更新表
- tensorflow - 什么样的张量流操作会在 GPU 上执行?
- flutter - Flutter:打开抽屉时键盘弹出
- r - r system.time() 导致我的 r 会话挂起