1

是否可以在我的主查询中有一个group by子句的情况下进行分页类型的查询。

我将如何实现这一点(如果这可能的话)

示例查询:

SELECT * FROM TABLE_NAME GROUP BY DATEPART(YEAR,DATE), DATEPART(YEAR,MONTH)

我可以通过逐页阅读来获得结果吗?

...并且在讨论该主题时,我是否还可以在不将其放入子查询的情况下获得将要检索的总行数?

4

2 回答 2

2

使用ROW_NUMBERSQL Server 的 & CTE 功能,如下所述。

WITH CTE AS (
SELECT     A,B,C
           ROW_NUMBER() OVER (ORDER BY  columnName) RN
)
SELECT * FROM CTE WHERE RN Between 1 and 10

有关详细信息,请参阅http://sqlserverplanet.com/sql/pagination-using-rownumber 。

于 2012-05-18T06:02:25.743 回答
-1

分页的概念是:

  1. 您需要获取总行数。

    SELECT * FROM table_name where id='id';

  2. 设置每页显示的项目数。比如 $limit=50。这意味着,您将每页显示 50 个项目。

嗯,我认为如果你看看这个应该会更好,http ://php.about.com/od/phpwithmysql/ss/php_pagination.htm 。它解释得更好。

希望有帮助。

于 2012-05-18T05:28:44.017 回答