zoukankan      html  css  js  c++  java
  • 使用mybatis查询数据,按特定顺序排序

      有如下表table_people

        id          name

        1          dwyane

               2          james

               3          paul

               4          bosh

    现在将查询出的数据按照id 3、4、1、2排序

    先把id数据按照一定顺序放到一个List中

    1 List<Integer> ids = new ArrayList<Integer>();
    2 ids.add(3);
    3 ids.add(4);
    4 ids.add(1);
    5 ids.add(2);

    mybits sql如下

        <select id="findHistory" resultMap="recentlyBrowse">
            select * from(
                <foreach collection="list" item="id" index="index"
                open="(" close=")" separator="union all">
                select * from table_people where id=#{id,jdbcType=DECIMAL}
            </foreach>
            )
        </select>

    把ids作为参数传递给查询的dao方法

        @Autowired
        SqlSessionTemplate sql;
        public List<People> findHistory(List<Integer> ids){
            return sql.selectList(NAMESPACE + "findHistory", ids);
        }
  • 相关阅读:
    Pycharm快捷键【mac版】
    程序解数独
    c++ map
    c++ vector 初始化二维数组
    二进制求和
    数组形式的加一
    坑题:最后一个单词的长度
    最大子序和:dp
    外观数列
    双指针消重复项
  • 原文地址:https://www.cnblogs.com/simeone/p/4030378.html
Copyright © 2011-2022 走看看