日期:2014-05-17  浏览次数:20561 次

如何根据某列的值排序
本帖最后由 lvoers 于 2012-12-25 20:32:13 编辑
从A页面传到B页面某列的的参数值,B页面获取数据值中包含从A页面所传过来的数值。
由于数据采用分页显示.所以A页面所传过来的值不能显示在第一页。请问大家有什么办法.

数据:

 select * into #1 from (
 select 1 a,'A' b,'aaaaaaaa'c union all 
 select 2,'B','bbbbbbbb' union all
 select 3,'C','cccccccc' union all
 select 4,'D','dddddddd' union all
 select 5,'E','eeeeeeee' union all
  select 6,'F','eeeeeeee' union all
  select 7,'G','eeeeeeee'  
 )Z
 
 
 select * from #1 where a between 1 and 3 --第一页
 select * from #1 where a between 4 and 6 --第二页



假设我从A页面所传过来的值是b列的E ,请问我该怎么将排序将E列显示在 1 到 3 的第一页中,第二页中又如何显示

并且b列的E这一列永远是显示在某一页的第一行...

------解决方案--------------------
select case when b='E' then 1 else 2 end as fo,* 
from #1 where a between 1 and 3 --第一页 
or b='E'
order by fo,a