pcplayer:
[技术] 分页倒排序的 SQL 语法试验结果,莫非我的 SQL 7 有BUG
[阅读: 935] 2006-08-01 14:25:40
select * from
(select top 3 ID,RiQi from
(select top 6 ID,RiQi from MyTable as T6 order by RiQi desc) as T1 order by RiQi asc )
as T2 order by RiQi desc
-----------
以上语句执行正确,可以拿到倒排序的第 2 页的数据。这里,PageSize = 3, PageCount = 2
如果改为以下语句:
----------------
select * from
(select top 3 * from
(select top 6 ID,RiQi from MyTable as T6 order by RiQi desc) as T1 order by RiQi asc )
as T2 order by RiQi desc
执行这段语句,得到的是倒排序之后的第一页的数据,而不是第二页的。
-----------------------------------------------------------------
上述两个 SQL 语句的区别,就是嵌入的第二个子查询里,一个写了字段名,一个写的是 *,应该对排序起作用的 Order by 那里,都是一样的。
不知道这个算不算 BUG?