使用用户搜索参数生成MySQL JSON_EXTRACT条件

时间:2017-05-06 17:45:06

标签: mysql json rest

我有一个非常特殊的情况,用户可以为记录存储自己的JSON对象。原因是每个用户都有特殊的对象和数据结构,这是他正常记录的一部分。

我想让用户通过我的API搜索MySQL DB中的对象。我使用JSON_EXTRACT(json_field, "$ ...") ...语法或简称->语法。

用户应该可以进行以下查询: get /service/resource?a>3 AND b.c="dog" OR b.d IS NOT NULL 所有参数(a,b)都在json字段上搜索。

首先我想过使用一个参数列表,但是我怎么能够将AND,OR,IS NOT NULL运算符组合起来呢?

您如何为RESTful API设计这样的搜索功能?

1 个答案:

答案 0 :(得分:1)

Google正在使用“+”来构建查询。 Google查询“a AND B或NOT c” - > google.com/q=a+AND+b+or+NOT+c

我会尝试这个approuch。