REST API不支持SQL分组。有没有办法克服这个问题?

时间:2017-12-15 11:23:52

标签: mysql vtiger

我的数据库示例。我无法控制数据库如何保存数据。

http://sqlfiddle.com/#!9/155e3c/19

问题在于两个因素:

  1. REST API(vTiger opensource CRM)不支持分组。

  2. 对于存储多个选项列表选项的字段,数据库将它们存储在由| ## |分隔的1个字段中。

  3. 我想要的: 我希望能够根据multipicklist字段中的值的存在来获取查询,但由于没有分组支持,我不能在不影响查询的其余部分的情况下执行此操作。

    所以基本上我正在寻找一种方法来克服这种非分组情况,并产生一个等同于的查询:

    SELECT * FROM Contacts WHERE car IN('Toyota','Ferrari')AND(country LIKE'%Canada%'或country LIKE'%Brazil%');

    有办法做到这一点吗?

    增加: 如果我只想获得用户在搜索multipicklist字段时给出的所有选项,那就没问题,因为我只会使用AND运算符。但如果我只想要其中一个选项,则非分组OR运算符会破坏我的查询。

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,我需要检索无法通过API查询支持获取的数据。我最终创建了自己的web服务。您需要创建一个可以在本地开发的模块,然后将其部署到生产vtiger实例。您需要具有生产实例管理员权限的vtiger用户才能安装您的模块(您不需要直接访问数据库或文件)。

这样,您可以在mysql中创建自己的查询,并将它们包装在getContactsByCar(car_array)等函数中。