`
dyingcow
  • 浏览: 131328 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[Java]当分页遇到Group By,我该怎么得到你——count(*)?

阅读更多
<link rel="stylesheet" type="text/css" href="http://liushi.hitidea.org/plugins/plogeshi/styles/plogeshi.css">

做项目,遇到了这个问题。通常的分页在获得总的记录条目数量时都会在原始查询sql前加入select count(*)来做。但是当遇到sql是以group by结尾时,这样得到的结果却是每一个group的子数量,不能得到实际的去重记录数。解决的办法我想到两个,第一个是在一个开源项目的代码里看到的,先去掉group  by字句部分,再添加
select count(*),虽然可以兼容group by,但是得到的记录数是去重之前的数量,有失偏颇。第二个方法还是直接加入select count(*)进行查询,不过在直接取第一个记录数为总记录数之前,先判断一下:如果返回的List.size()为1,则直接去第一个元素的整数值;否则,取List.size()作为记录数量,因为这时是查询的含有group by的sql语句,List.size()就是分组的数量。

如果谁有更好的方法解决按字段去重引发的分页总页数不准问题,或者发现我的这个解决方法在什么情况下不适用,还请不吝赐教。

分享到:
评论

相关推荐

    sqlserver+group by分组查询分页存储过程

    根据给定的SQL Server存储过程代码片段,我们可以深入解析与SQL Server中的`GROUP BY`分组查询、存储过程以及分页技术相关的知识点。 ### SQL Server中的`GROUP BY`分组查询 `GROUP BY`子句在SQL查询语言中用于将...

    java 数据分页显示

    在Java编程中,数据分页显示是Web应用中常见的需求,尤其在处理大量数据时,为了提高用户体验并优化服务器性能,通常需要将数据分成多个页面进行展示。本篇将深入探讨Java实现数据分页显示的核心技术和策略。 首先...

    java实现分页 jsp分页 分页

    java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页

    Java分页Java分页Java分页

    Java分页技术是Java开发中一个非常重要的概念,特别是在处理大量数据时,为了提高用户体验和系统性能,分页成为必不可少的手段。Java分页主要涉及数据库查询、内存管理以及前端展示等多个方面。以下是对Java分页技术...

    java 通用分页 java 通用分页

    Java 通用分页详解 Java 通用分页是指在Java编程中对大量数据进行分页处理,以提高系统效率和性能。下面对Java通用分页的知识点进行详细说明: 1. 分页的必要性 在实际项目中,数据量可能非常大,直接查询所有...

    java web 分页 设计

    在Java Web开发中,当需要展示大量数据时,通常会采用分页技术来提高用户体验和减轻服务器负担。分页可以有效地控制每次加载的数据量,使得用户界面更加流畅,并且能够减少服务器资源消耗。 #### 二、通用分页模块...

    java分页——taglib

    总结来说,`java分页——taglib`是利用自定义标签库来简化Java Web应用中分页功能的实现。通过`pagerdemo`,开发者可以方便地在JSP页面中插入分页组件,并在后端处理分页逻辑,从而提高代码的复用性和可维护性。这个...

    mssql+group by 分页例子

    在SQL Server中,`GROUP BY`子句是一个非常重要的功能,用于对数据进行分组,以便我们可以对每个组执行聚合函数,如`COUNT`, `SUM`, `AVG`, `MAX`, 和 `MIN`等。在标题和描述中提到的“mssql+group by 分页例子”是...

    Java公用分页类 Java公用分页类

    Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类

    java万能分页代码

    Java万能分页代码是Java开发中常用的工具,尤其在处理大数据量的Web应用时,分页技术能够显著提升用户体验并优化服务器性能。这个3.0版本的分页代码库通常包含了一些经过优化的分页算法和接口,适用于各种场景,如...

    java动态分页类

    Java动态分页类是Web开发中常用的一种技术,主要用于处理大量数据时的显示问题,以提高用户体验和系统性能。在数据库查询中,一次性加载所有数据可能会导致内存压力过大,特别是对于大数据量的表。因此,分页技术...

    用java 实现分页

    在Java编程中,分页是数据管理中一个常见的需求,特别是在处理大数据集时,为了提高用户体验和系统性能,我们通常不会一次性加载所有数据,而是分批次地加载,这就是分页的基本概念。本教程将深入讲解如何使用Java...

    分页缓存

    在IT行业中,分页缓存是一种优化大数据量查询性能的技术,尤其在Web应用程序中非常常见。它通过将数据库查询结果存储在内存缓存中,减少对数据库的直接访问,从而提高系统响应速度和用户体验。本篇文章将深入探讨...

    JAVA分页大全.txt

    根据提供的文件信息,我们可以深入探讨Java分页技术的相关知识点,特别是Struts框架中的分页实现。下面将详细介绍分页的基本概念、Struts框架中的分页处理方式以及如何使用自定义的`PageController`类来实现分页功能...

    java多线程分页查询

    ### Java多线程分页查询知识点详解 #### 一、背景与需求分析 在实际的软件开发过程中,尤其是在处理大量数据时,如何高效地进行数据查询成为了一个关键问题。例如,在一个用户众多的社交平台上,当用户需要查看...

    java分页工具类

    page.java java分页工具类

    最好最好的java万能分页标签

    Java万能分页标签是一种高效的页面分页解决方案,尤其适合于Java Web开发中处理大量数据的展示场景。这种标签库简化了开发过程,使得开发者无需编写繁琐的分页逻辑,而是通过简单的配置和调用就能实现高效且灵活的...

    java分页代码完整版

    Java 分页技术是大型Web应用中不可或缺的一部分,它允许用户以较小的数据量逐步浏览大量数据库记录,提升用户体验并减轻服务器压力。本资源提供了一个完整的Java分页代码实现,包括注释,非常适合初学者学习和实践。...

    java实现的一个分页程序

    在Java编程语言中,分页程序是用于处理大量数据并将其以较小、可管理的块(页面)显示给用户的一种常见技术。这尤其适用于数据库查询返回的结果集过大,一次性加载到内存中会消耗大量资源或者导致性能下降的情况。在...

    JAVA分页实现JAVA+JS+HTML

    在IT行业中,分页是一种常见的数据展示技术,尤其是在网页应用中,用于处理大量数据的显示。本主题将深入探讨如何使用JAVA、JavaScript(JS)和HTML来实现分页功能。 首先,我们来看JAVA部分。在JAVA中,分页通常与...

Global site tag (gtag.js) - Google Analytics