Order By 排序条件中带参数的写法(Oracle数据库、MyBatis)

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

sortWay 是参数。 当sortWay  为 llpx 就 ORDER BY FORMAT ASC,为 btypx 就ORDER BY BID DESC ,为 zhpx 就 ORDER BY FORMAT ASC,BID DESC 

我本来觉得上面方法是可以的,但是不知道什么地方有问题运行会说在 位置就该是标签了。

希望有人解决了给我说下这个方法是不是可以用。

 

 

 

最后Order By 排序条件中带参数的写法  我还是无奈的用 ORDER BY ${sortSql}  ,就是在后面传参数 拼sql的方式实现的。

我查到说${}是不安全的,推荐用#{}。

#{}是安全的,可以防止sql注入,会预预编译在参数外面加上单引号‘’ ,在order by后面参数加单引号会语句无效。只好还是用了${}。

 

这个问题怎么办  如果有人知道也非常希望给我说说。

 

 

后记 : ORDER BY ${参数1} ${参数2}   这种写法是OK的,只是要在代码中先过滤性验证前端传入的参数是不是合规的,作验证防止sql注入。

 

 

你可能感兴趣的:(数据库,order,by,多条件,排序,mybatis)