java进行分库后查询的问题_解决一个分表之后出现的查询报错问题

做了分表之后,原先的底层sql语句查询开始出现问题。

sql语句:

select xxx from table a

LEFT JOIN table b

where a.列x = #{参数名}

报了 Cause: e: groovy.lang.MissingMethodthodException: No signature of method: d: java.lang.String.mod() i() is applicable for argument types: (: (java.lang.Integer) va) values: [10]

解决方法:

我们是按照列x对表a进行的分表,以列x的尾数对a表拆成了10张表。个人判断出的这个问题很可能是传入的String类型参数无法让系统判断其尾数。

所以把#改成$,或者后面加''强制转换String就解决了....

select xxx from table a

LEFT JOIN table b

where a.列x = ${参数名}

或者

select xxx from table a

LEFT JOIN table b

where a.列x = #{参数名}+''

也可以

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值