【sql server 多字段排序,处理排序字段为空的问题】
文章目录
- 引言
- I 处理排序字段为空的问题
- 效果
- Java 实现
- 错误用法
- II 处理数据保持 SQL 的排序顺序
- III 处理后再排序
引言
本文主要解决SQL查询结果排序的三个关键问题:
- 处理排序字段为空时,通过ISNULL函数设置默认值确保正确排序
- 在分页查询中避免使用last()方法导致排序失效;
- 保持查询结果集原有顺序的方法。
给出了Java代码示例,包括正确使用QueryWrapper的orderByDesc方法、分页查询时的注意事项,以及使用Comparator.nullsLast处理空值的排序技巧。文中还展示了SQL执行效果对比和错误用法分析,帮助开发者正确处理数据库查询结果的排序问题。
I 处理排序字段为空的问题
效果
Java 实现
正确用法
queryWrapper.orderByDesc(" ISNULL(ac.update_time, '1900-01-01 00:00:00') ","mt.update_time"