[MyBatis]Mapper在order by中使用$的情况

发布于个人的CSDN :Mapper在order by中使用$的情况

问题描述

MyBatis项目种,在测试接口是发现,返回的json数据不能按照传入的参数"sortBy": "id"进行order by id排序,当时返回的json数据如下图:
[MyBatis]Mapper在order by中使用$的情况

解决

发现该问题时,我最先是将sortBy": "id"改为sortBy": "sales_history.id"
但是,没有用!
[MyBatis]Mapper在order by中使用$的情况
第二次将sortBy": "sales_history.id"改为sortBy": "",再测试
[MyBatis]Mapper在order by中使用$的情况
这次出现了如期的升序结果。

这是为什么呢?
回去检查一下这句order by #{sort},现在我改成了order by ${sort},再试试看
[MyBatis]Mapper在order by中使用$的情况
结果也是可以的。

小结

经查证:

  • MyBatis的Mapper如果使用在order by 中就需要使用 $

详细看 [MyBatis]Mapper中 $ 与 # 的区别

[MyBatis]Mapper在order by中使用$的情况

上一篇:/dev/mapper/centos-root 清理


下一篇:[MyBatis]Mapper中 $ 与 # 的区别