全字段多条件搜索(api接口)

Posted myka

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了全字段多条件搜索(api接口)相关的知识,希望对你有一定的参考价值。

近期在做项目时遇到了一个全表全字段多条件搜索的需求,在平时搜索最常见的就是 字段+like +‘% 条件%’这种模式,但遇到多条件多字段时,这种就不适用了。 表字段已知,条件未知,条件数量未知,这种情况我们不可能每多一个条件就加一个and。

解决办法:

先将用户输入的条件存入一个数组中,例如以空格隔开的条件:

 String[] strArr = SearchText.Split(" ");  

进行循环遍历数组中的条件进行sql拼接

for(int i =0;i<strArr.Length;i++) 

{
sql += "concat(D1,D,D3,D4,D5,D6,D7,D8,D9,D10,Data) like ‘%"+strArr[i] + "%‘and";

}

然后将拼接好的sql放入where条件下就可以了。

这个方法是在不考虑查询效率时所使用的。

测试:数据约两万条,二十五个字段,45kb左右,大约要17s(查询条件无)

 技术图片

以上是关于全字段多条件搜索(api接口)的主要内容,如果未能解决你的问题,请参考以下文章

kettle实现从api接口全量抽取数据到数据库中

通用 OCR API 接口

如何设计一个多条件查询的restfulAPI

Swagger接口文档

全国大学高校基础信息 API 接口

接口(API)设计规范