mybatis查询varchar类型的时间报错:Illegal mix of collations for operation ‘<=‘

以数据库中varchar类型的时间作为where条件在mybatis中查询报错:Illegal mix of collations for operation '<='

应用场景:数据库中时间是以varchar类型保存的时间字符串,要求查询出满足时间要求的数据,所以遇到了一些问题
1.在navicat中完美执行:

SELECT
	count,
	o_date 
FROM
	cfg_hc_meinianxinzenghuiyuansh 
WHERE
	str_to_date( o_date, '%Y-%m-%d' ) <= '2019-08-29' 
ORDER BY
	o_date DESC 
	LIMIT 7

结果:
在这里插入图片描述
但是放入到mapper.xml中后将 "<="符号变成了 "&lt="否则小于号会被解析成开始标签,然后运行就报错了

解决:
使用<![CDATA[]]>,这样使用就不用转成"&lt=",因为在这里面的sql不会被解析

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值