当前位置: 代码迷 >> Sql Server >> select top用法解决方法
  详细解决方案

select top用法解决方法

热度:17   发布时间:2016-04-24 10:27:39.0
select top用法
    请教一个问题,select top 50 percent * from 表名。如果想去掉正好50%的值(临界值)怎么改SQL语句,谢谢。
------解决方案--------------------
Select top (Select abs(cast(count(1)*0.5 as int)-1) From 表名) * From 表名
------解决方案--------------------
Select top (cast(floor(count(1)*0.5) as int)) * From 表名 where xueqi='1011-2' and xueyuan='学院' order by zongpingfen asc

最后再强型转为int就可以了
------解决方案--------------------

-- 凑个人数。
-- 别用 *0.5 这个运算了,还得来回转换,直接  / 2 吧, 5 / 2 = 2 ;10 / 2 = 5 ;
-- (10 - 1 ) / 2 = 4  ; (15 - 1 ) / 2 = 7 ;
select top (select ( COUNT(*) -1 ) / 2 from sysobjects) * from sysobjects 
  相关解决方案