mybatis动态sql排序
时间: 2023-11-11 19:05:05 浏览: 115
MyBatis动态SQL排序可以通过以下方式实现:
1. 使用`<if>`标签判断是否需要排序,如果需要,使用`<choose>`标签选择排序方式,可以使用`<when>`标签指定不同的排序方式。例如:
```
<select id="getUserList" resultMap="userMap">
SELECT * FROM user
<if test="sort != null">
<choose>
<when test="sort == 'name'">
ORDER BY name
</when>
<when test="sort == 'age'">
ORDER BY age
</when>
</choose>
</if>
</select>
```
2. 使用`<trim>`标签处理排序语句,可以使用`<if>`标签判断是否需要排序,使用`<set>`标签设置排序字段和排序方式。例如:
```
<select id="getUserList" resultMap="userMap">
SELECT * FROM user
<trim prefix="ORDER BY" suffixOverrides=",">
<if test="sort == 'name'">
name ASC,
</if>
<if test="sort == 'age'">
age DESC,
</if>
</trim>
</select>
```
以上两种方式都可以实现动态排序,选择哪种方式取决于个人喜好和具体情况。
阅读全文