xml中SQL执行错误(使用另外一张表的两个字段,组装SQL的where查询条件)

SQL实现功能描述:根据系统设置中的商店到期提醒周期、单位,在过期提醒的列表中,对数据进行周期展示

错误复现:

Mapper接口中抽象方法的定义如下:

复制代码
Page<ShopVo> queryList(@Param("vo") ShopVo shopVo ,Page<ShopVo> page);

xml中的SQL如下:

java 复制代码
<select id="queryList" resultType="com.hl.test.Vo.ShopVo">

<if test="vo.type!=null and vo.type!="">

declare @duration int declare @unit varchar(20)

select  @duration=duration,@unit=unit from tb_sys_param

where type=#{vo.type}

</if>

select * from shop

where

createtime >=(

CASE @unit

WHEN '年'THEN DATEADD(YEAR,@duration,endtime)

WHEN '月'THEN DATEADD(MONTH,@duration,endtime)

ELSE DATEADD(DAY,@duration,endtime)

)

ORDER BY DCJSJ DESC

</select>

//报错原因:mybatis中的Page分页不能与xml中定义变量同时,实现数据的分页查询

//修改:mapper中的接口

List<ShopVo> queryList(@Param("vo") ShopVo shopVo );

同时,service中调用mapper中的接口后,并且手动分页

相关推荐
Coder_Boy_几秒前
Java后端核心技术体系全解析(个人总结)
java·开发语言·spring boot·分布式·spring cloud·中间件
南部余额6 分钟前
函数式接口 Lambda 表达式好搭档:Predicate、Function、Consumer、Supplier
java·开发语言·consumer·lambda·function·predicate·supplier
Java后端的Ai之路19 分钟前
【JDK】-JDK 17 新特性整理(比较全)
java·开发语言·后端·jdk17
小小小米粒23 分钟前
Spring Boot Starter ,不止是 “打包好配置的工具类包”
java·开发语言
用户8307196840821 小时前
告别冗余!Spring Boot Web 入参转换 6 种玩法,@InitBinder 可以退休了
java·spring boot
Desirediscipline1 小时前
#include<limits>#include <string>#include <sstream>#include <iomanip>
java·开发语言·前端·javascript·算法
lucky67071 小时前
Laravel 9.x LTS重磅升级:六大核心改进
java·php·laravel
人道领域1 小时前
MyBatis-Plus为何用JavaBean映射数据库表及乐观锁实战
java·开发语言·数据库
加洛斯1 小时前
RabbitMQ入门篇(1):初识MQ
java·后端
bai_lan_ya1 小时前
makefile通用解析
java·运维·数据库