MyBatis排序无效的坑_orderByXLimit
2021-07-02 20:03
标签:语句 发送数据 released 直接 sql 包括 res list release 情景:将数据库里边的“新闻资讯”信息按照特定字段的升序/降序进行分页显示。 前端发送数据:newType(新闻类型,包括公司动态、行业资讯等类型)、orderBy(指定按照哪一个字段进行排序)、orderType(指定按照哪一种排序顺序进行排序,包括升序、降序)、start(开始查询的 记录位置)、pageSize(本次查询的记录条数)。 MyBatis语句: releasedate is not null 问题:不论前端给orderType传ASC还是DESC,所得到的结果都是按照ASC排序。。。 日志打印语句: 传DESC时 :Preparing: SELECT * FROM t_newdb where releasedate is not null and newType = ? order by ? DESC limit ?, ? 传ASC时: Preparing: SELECT * FROM t_newdb where releasedate is not null and newType = ? order by ? ASC limit ?, ? 将对应语句复制到Navicat执行,结果输出正确。。。 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 最后,我将orderBy直接写死为数据库中一个字段,排序方式成功起作用。。。。。 个人估计:难道order by 后面直接写两个变量就会使后面一个变量失效? 本人页在网上找了相关帖子,然而并没有找到确切的说法。。。。。 贴出问题,若有大佬路过,也请顺手指点一二。 最后说句:博客园码代码真的很伤。。。 MyBatis排序无效的坑_orderByXLimit 标签:语句 发送数据 released 直接 sql 包括 res list release 原文地址:https://www.cnblogs.com/-t9x4d/p/9629586.html
SELECT * FROM t_newdb
and newType = #{newType}
order by #{orderBy}
${orderType}
limit #{start}, #{pageSize}
文章标题:MyBatis排序无效的坑_orderByXLimit
文章链接:http://soscw.com/essay/100931.html