querywrapper怎么对字段中的字符串先进行分割后再逐一进行区间判断
时间: 2024-03-14 14:47:18 浏览: 39
如果您要对字段中的字符串进行分割后再逐一进行区间判断,可以使用QueryWrapper中的`apply`方法。具体实现方法如下:
假设您要对字段`field`中的字符串进行分割后再逐一进行区间判断,判断条件为分割后的每个字符串在[min, max]之间,代码如下:
```
String str = "1,2,3,4,5,6,7,8,9,10";
String[] arr = str.split(",");
int min = 3;
int max = 8;
QueryWrapper wrapper = new QueryWrapper();
wrapper.apply("false", Arrays.stream(arr).map(s -> "field BETWEEN " + min + " AND " + max).collect(Collectors.joining(" OR ")));
```
以上代码中,我们首先将字符串`str`通过逗号分隔符转换为数组`arr`,然后使用`apply`方法将每个元素都拼接成一个`BETWEEN`条件,最后使用`OR`将条件连接起来,生成如下的SQL语句:
```
SELECT * FROM table WHERE false OR field BETWEEN 3 AND 8 OR field BETWEEN 3 AND 8 OR field BETWEEN 3 AND 8 OR field BETWEEN 3 AND 8 OR field BETWEEN 3 AND 8 OR field BETWEEN 3 AND 8 OR field BETWEEN 3 AND 8 OR field BETWEEN 3 AND 8 OR field BETWEEN 3 AND 8 OR field BETWEEN 3 AND 8;
```
这样就可以对字段中的字符串进行分割后再逐一进行区间判断了。需要注意的是,由于`apply`方法中的第一个参数需要传入一个SQL的片段,为了避免生成无用的SQL语句,我们在这里传入了一个永远为`false`的条件。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)