Mybatis xml中排序(order by)条件用#{}查询失败

问题描述:

处理简单分页时,发现从外部传入的排序条件无法生效,但程序无报错,正常返回列表,只是排序条件不对;

原因:

#{}表示一个占位符,当#{}传入的数据是一个字符串时,会自动将传入的数据加一个双引号。

解决方法:

使用${}将传入的数据直接显示生成在sql中;

1、当查询语句使用#{},例如传入"update_date desc"排序条件,生成语句如下

select id, title, name, status, create_by,create_date,update_by,update_date from table 
WHERE status = 1 order by "update_date desc"

2、使用${}生成语句是:

select id, title, name, status, create_by,create_date,update_by,update_date from table 
WHERE status = 1 order by update_date desc

3、推荐文章

Mybatis中${}和#{}的区别:https://blog.csdn.net/BBQ__ZXB/article/details/127089187

相关推荐
计算机学姐1 小时前
基于微信小程序的调查问卷管理系统
java·vue.js·spring boot·mysql·微信小程序·小程序·mybatis
小徐敲java14 小时前
通用mybatis-plus查询封装(QueryGenerator)
mybatis
OEC小胖胖15 小时前
Spring Boot + MyBatis 项目中常用注解详解(万字长篇解读)
java·spring boot·后端·spring·mybatis·web
计算机学姐16 小时前
基于SpringBoot+Vue的在线投票系统
java·vue.js·spring boot·后端·学习·intellij-idea·mybatis
落落落sss16 小时前
MybatisPlus
android·java·开发语言·spring·tomcat·rabbitmq·mybatis
海绵波波10718 小时前
Qt操作主/从视图及XML——实例:汽车管理系统
xml·qt·汽车
罗曼蒂克在消亡19 小时前
2.3MyBatis——插件机制
java·mybatis·源码学习
cyt涛21 小时前
MyBatis 学习总结
数据库·sql·学习·mysql·mybatis·jdbc·lombok
CHICX12291 天前
【Hadoop】改一下core-site.xml和hdfs-site.xml配置就可以访问Web UI
xml·大数据·hadoop
OLDERHARD1 天前
Java - MyBatis(上)
java·oracle·mybatis