记录的选择

来源:互联网 发布:幼儿园美工课教案 编辑:程序博客网 时间:2024/05/21 21:35

数据库:twt001

数所表:asample

参考文章:分享一些不错的sql语句

(1)取前10条记录

select top 10  *  from asample


(2)随机取出10条数据

select top 10  *  from asample order by   newid()


(3)选择从10到15的记录

select top 5 * from (select top 15  *  from asample order by xh  asc)   table_别名 order by  xh   desc


(4)随机选择记录 :select   newid()

      newid()返回的是uniqueidentifier类型的唯一值。

      order by newid()随机选取记录是如何进行的
      newid()在扫描每条记录的时候都生成一个值, 而生成的值是随机的。 newid()每次产生的值都不一样,那么根据这样的值进行排序,每次的结果也是不一样的。

      原理是 把所有的ID出取然后用随机函数取出其中一个,然后用这个随机取到的ID去数据库里再取出记录,所有代价有点大。\

 --随机排序 select  *  from asample order by   newid() 

(5)

一条sql   语句搞定数据库分页
select   top   10   b.*   from   (select   top   20   主键字段,排序字段   from   表名   order   by   排序字段   desc)   a,表名   b   where   b.主键字段   =   a.主键字段   order   by   a.排序字段
 

select top 20 xh,je from asample order by je descselect top 10 b.* from(select top 20 xh,je from asample order by je desc) a,asample b where b.xh = a.xh order by a.je desc


 (6)限制返回的行数
使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是 表示一百分数,指定返回的行数等于总行数的百分之几。

Select TOP 2 * FROM asampleSelect TOP 20 PERCENT * FROM asample


 

 

0 0
原创粉丝点击