`
弗洛韦德
  • 浏览: 13559 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

mybatis查询,按特定顺序排序

阅读更多

  在数据库的查询中我们可以使用order by实现按某个字段升序或者降序的排序,如果是要按照一个特定的顺序排序,用order by 就不行了,例如要按照id 是2、3、1这个顺序排序,显然用升序或者降序都不行,这里就要用到集合了(unionall)

 

这里我们可以创建一个数组或者是list把id按照一定的顺序放入到数组或者集合中 把这个集合或者数组作为参数传递个方法

	public List<Base> findHistory(List<Integer> ids){
		return sql.selectList(NAMESPACE + "findHistory", ids);
	}

 mybatis的动态sql如下

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

 

分享到:
评论

相关推荐

    动态实现排序的效果

    例如,如果我们要按数值大小升序排序,可以这样写: ```javascript let arr = [4, 2, 7, 1, 3]; arr.sort((a, b) =&gt; a - b); ``` 描述中的“另一种方式”可能指的是使用不同的排序算法,如冒泡排序、插入排序、...

    数据库随机查询代码

    2. **结果重复性**:由于随机排序的结果是不可预测的,因此每次执行同样的随机查询可能会得到不同的结果。 3. **安全性考虑**:在实际应用中,需要确保只对经过适当权限控制的表进行随机查询。 #### 五、总结 随机...

    查询与视图.

    在查询设计器中,"字段"选卡用于选择输出的列,"筛选"选卡用于设定数据过滤条件,"连接"选卡定义不同表之间的关联,"排序"选卡用于设定结果的排序顺序,"分组"选卡则用于对数据进行分组汇总。 视图则是一种预定义的...

    详解 Mysql查询结果顺序按 in() 中ID 的顺序排列

    总结来说,这个示例展示了如何利用MySQL的`IN()`和`FIELD()`函数来根据指定的ID顺序排序查询结果,这对于需要个性化排序或用户定制顺序的场景非常有用。然而,为了性能考虑,对于大数据集,可能需要探索其他优化策略...

    实现千万级数据的分页显示

    2. **排序**:根据指定字段进行排序,以确保数据的正确顺序。 3. **动态SQL**:根据用户输入的参数动态生成SQL语句,以适应不同的分页需求。 4. **条件过滤**:支持WHERE子句,允许用户根据特定条件筛选数据。 ####...

    sql server 分页大全

    3. `ORDER BY`:在分页查询中,`ORDER BY`用于指定数据的排序方式,这是分页的基础,因为没有特定的顺序,分页就失去了意义。 四、优化分页性能 1. 避免全表扫描:尽可能使用索引来加速`ORDER BY`操作,尤其是对于...

    SSM框架新闻管理系统源码.zip

    - **新闻列表**:展示所有新闻,通常按照时间或特定顺序排列。 - **按分类查询**:用户可以根据新闻类别浏览相关主题的新闻,提高信息查找效率。 - **按关键词查询**:用户输入关键词,系统返回相关的新闻,方便...

    韩顺平Oracle版的分页查询

    在实际项目中,还应考虑性能优化,如创建索引来加速排序和查询,以及合理设计数据库表结构以减少I/O操作。另外,对于大数据量的分页,可能需要考虑使用游标或者存储过程来避免一次性加载大量数据。 总之,"韩顺平...

    Delivery-3-ReportVersion_II:重建订单创建顺序,重建调度页面,添加过滤器,排序器,编辑用户页面

    - 数据过滤:允许用户根据特定条件(如订单状态、日期范围等)筛选数据,这需要在前端实现过滤功能,并在后端处理对应的查询请求。 - 数据排序:用户可以根据需求对列表进行排序,如按创建时间、订单金额等字段...

    Java数据结构与算法

    排序算法用于将一组数据按照特定顺序排列,而搜索算法则用于在数据中查找特定元素。图算法在处理复杂关系时非常有用,如找出最短路径或判断有向图是否存在环。动态规划通常用于优化问题,贪心算法试图在每一步选择最...

    北京神州数码斯特奇面试

    冒泡排序是一种简单的排序算法,它重复地遍历要排序的列表,比较每对相邻项,如果它们的顺序错误就把它们交换过来。遍历列表的工作是重复进行的,直到没有再需要交换,也就是说该列表已经排序完成。此算法的名字由来...

    oracle 自定义翻页sql

    我们可以利用`ROWNUM`来实现分页,但要注意的是,`ROWNUM`是在查询结果产生之前被计算的,因此它无法满足复杂的分页需求,如跳过特定数量的记录或者根据某个条件分组后分页。 二、基础分页SQL 最简单的分页查询...

    分页代码Oracle

    在上述SQL语句中,`your_table`是你要查询的表名,`your_sort_column`是用于排序的列名,这通常与用户界面中显示数据的顺序保持一致。`currentPage`和`pageSize`是之前提到的分页参数。 在Java开发中,我们通常使用...

    result最为返回值

    SortedMap保证了键的排序,可以按顺序访问: ```java for (int i = 0; i (); i++) { Map row = result.getRows()[i]; Object value = row.get(key); // 获取指定列的值 // 处理value } ``` 通过这种方式,我们...

    2017221302006-周玉川-第二次作业1

    例如,使用SQL可以编写复杂的查询语句,进行多表关联操作,并通过SELECT语句获取数据,还可以通过SORT或ORDER BY子句对结果进行排序。 2. 数据完整性:数据完整性分为实体完整性、参照完整性和用户自定义完整性。...

    java中数据库应用

    在Java中与数据库交互时,可以使用JDBC(Java Database Connectivity)API,或者ORM框架如Hibernate或MyBatis。这些框架可以帮助简化数据库操作,同时提供性能优化的可能性,如预编译语句(PreparedStatement)来...

    Query-Processor:它是 Ad-Hoc OLAP 查询的查询处理引擎

    这包括选择最佳的连接算法(如嵌套循环、哈希或排序合并)、索引的使用、子查询的重写以及操作顺序的调整。优化器通常基于统计信息和成本模型来做出决策。 3. **执行计划**:优化后的查询被转化为执行计划,这是一...

    学生信息管理系统源代码_学生管理系统_

    4. 排序功能:可以按照不同字段对学生信息进行排序,如按学号升序或降序,按姓名字母顺序等,方便查看和分析。 5. 输出功能:系统提供导出功能,将学生信息导出为Excel或其他格式的文件,便于打印、备份或与其他系统...

    java 常用方法

    - `HashSet`, `TreeSet`:无序不重复元素集合,前者不保证排序,后者按自然排序。 - `HashMap`, `TreeMap`:键值对存储,前者不保证顺序,后者按键的自然顺序或比较器排序。 - `Arrays.asList()`: 将数组转换为...

Global site tag (gtag.js) - Google Analytics