mybatis/mybatis-dynamic-sql

How to use mybatis-dynamic-sql for dynamic splicing conditions

9-4-6 opened this issue · 1 comments

9-4-6 commented
  .and(QCItemCategoryDynamicSqlSupport.categoryName, isInWhenPresent(query.getItemCategoryList()));
                for (Long[] companyIdRange : companyIdRanges) {
                    if (companyIdRange.length == 2) {
                        whereBuilder = whereBuilder.or(audioInfo.companyId, isBetween(companyIdRange[0]).and(companyIdRange[1]));
                    } else if (companyIdRange.length == 1) {
                        whereBuilder = whereBuilder.or(audioInfo.companyId, isEqualTo(companyIdRange[0]));
                    }
                }
``
The expected conditions for generating sql are
 where  categoryName in() andcompanyId   Between 1 and 2 or companyId  1),如何对代码进行修改
  .and(QCItemCategoryDynamicSqlSupport.categoryName, isInWhenPresent(query.getItemCategoryList()));
                for (Long[] companyIdRange : companyIdRanges) {
                    if (companyIdRange.length == 2) {
                        whereBuilder = whereBuilder.or(audioInfo.companyId, isBetween(companyIdRange[0]).and(companyIdRange[1]));
                    } else if (companyIdRange.length == 1) {
                        whereBuilder = whereBuilder.or(audioInfo.companyId, isEqualTo(companyIdRange[0]));
                    }
                }
``
The expected conditions for generating sql are
 where  categoryName in() andcompanyId   Between 1 and 2 or companyId  1),如何对代码进行修改

已解决