若是直接
SELECT * FROM project_celiangbuwei where clbwid in ( 7 , 11 , 20 , 4 )
则输出结果为:
4 净胸围
7 净臀围
11 肩宽
20 横裆
使用Field函数排序后:
SQL:
SELECT * FROM project_celiangbuwei where clbwid in ( 7 , 11 , 20 , 4 ) ORDER BY FIELD(clbwid,7,11,20,4)
输出结果:
7 净臀围
11 肩宽
20 横裆
4 净胸围
mybatis 设置:
<select id="findByIds" resultType="com.bwhx.eruler.bean.CeliangBuwei">
SELECT * FROM project_celiangbuwei
where
clbwid in
<foreach collection="array" index="index" item="item" open="(" separator="," close=")" >
#{item}
</foreach>
order by
field(
clbwid,
<foreach collection="array" index="index" item="item" separator="," >
#{item}
</foreach>
)
</select>