重庆网站建设模板,软文广告经典案例600,为什么做网站比app便宜,wordpress做社交网站在mybatis中使用case when进行条件筛选判断时遇到Failed to process, please exclude the tableName or statementId.这样的报错信息#xff0c;报错的信息是语法错误但是我在mysql的命令行中运行sql语句是没问题的//我的case when语句WHERE dept.type 1AND(CASE agent.dept_…在mybatis中使用case when进行条件筛选判断时遇到Failed to process, please exclude the tableName or statementId.这样的报错信息报错的信息是语法错误但是我在mysql的命令行中运行sql语句是没问题的//我的case when语句WHERE dept.type 1AND(CASE agent.dept_typeWHEN agent THEN dept.id30END)//当agent的dept_type为agent时将添加dept.id 30的判断这段sql语句在命令行内运行没问题但是放到mybatis上执行就会报错//修改后WHERE dept.type 1AND dept.id(CASE agent.dept_typeWHEN agent THEN 30END)后来将dept.id放到外面就解决了这个问题20190718-补充记录 遇到另一个问题如果dept这个表是联查来的有可能会没有数据在dept无数据的时候我们就无法给dept.id赋上啥参数了并且不可以影响原表数据的查询我改成了下面这样//修改后WHERE dept.type 1AND (dept.id(CASE agent.dept_typeWHEN agent THEN 30ELSE 0END) or dept.id is null)添加dept.id为空的判断即可(在mysql语句里可以有很多方法解决但是在mybatis上就会报错 -_-||)2019-7-30-补充说明如果是空字符串不可以使用要改成单引号CASE WHEN *** THEN ***ELSE 这样也会报错,需要改成 ELSE补充Mybatis case when test 注意事项p_id areaId,c_id areaId,r_id areaId,test 中 用 不能用 否则报错。以上为个人经验希望能给大家一个参考也希望大家多多支持脚本之家。如有错误或未考虑完全的地方望不吝赐教。