使用top中把与最后一条记录值相同的数据也放入列表中

一、SQL SERVER中使用WITH TIES的用途

with ties一般是和Top , order by相结合使用的,会查询出最后一条数据额外的返回值(如果按照order by 参数排序TOP n返回了前面n个记录,但是n+1…n+k条记录和排序后的第n条记录的参数值(order by 后面的参数)相同,则n+1、…、n+k也返回。n+1、…、n+k就是额外的返回值)。

二、通过实例说明WITH TIES

1、初始数据

  1. CREATE TABLE students(
  2. id int IDENTITY(1,1) NOT NULL,
  3. score int NULL
  4. ) ON PRIMARY
  5. GO
  6. INSERT INTO students (score) VALUES (100)
  7. INSERT INTO students (score) VALUES (100)
  8. INSERT INTO students (score) VALUES (100)
  9. INSERT INTO students (score) VALUES (90)
  10. INSERT INTO students (score) VALUES (90)
  11. INSERT INTO students (score) VALUES (85)
  12. INSERT INTO students (score) VALUES (84)
  13. INSERT INTO students (score) VALUES (80)
  14. INSERT INTO students (score) VALUES (80)
  15. INSERT INTO students (score) VALUES (75)
  16. INSERT INTO students (score) VALUES (74)
  17. INSERT INTO students (score) VALUES (70)

2、使用WITH TIES查询成绩排名前8的学生

 
  1. SELECT TOP 8 WITH TIES * FROM students ORDER BY score DESC

结果

说明

上面的这条查询将会返回9行,原因在于第9行中的score值都与第8行相同。

参考资料:SQL SERVER中WITH TIES的用法  http://www.studyofnet.com/news/1227.html

top与with ties用法的更多相关文章

  1. 数据库学习笔记3 基本的查询流 2 select lastname+','+firstname as fullname order by lastname+','+firstname len() left() stuff() percent , select top(3) with ties

    数据库学习笔记3 基本的查询流 2   order by子句对查询结果集进行排序 多列和拼接 多列的方式就很简单了 select firstname,lastname from person.pers ...

  2. SQL语句中的TOP(expression) [PERCENT] [WITH TIES] 用法

    TOP(expression) [PERCENT] [WITH TIES] expression : 指定返回行数的数值表达式.如果指定了PERCENT,则expression默认转换为FLOAT值, ...

  3. select top 1 和select top 1 with ties * from SC 的区别

    select top1 : * FROM SC ORDER BY score DESC 运行结果如下: sc表数据查询select top 1 S# C# Score 001 03 120 WITH ...

  4. 关于js中window.location.href,location.href,parent.location.href,top.location.href的用法

    "window.location.href"."location.href"是本页面跳转 "parent.location.href"是上一 ...

  5. 关于js中"window.location.href"、"location.href"、"parent.location.href"、"top.location.href"的用法

    location.href 和 window.location.href 区别: 1.location.href 可以直接跳转其他地址(不属于本项目) 也可以跳转本项目中的 2.window.loca ...

  6. 关于js中window.location.href,location.href,parent.location.href,top.location.href的用法与区别(跳出iframe方法)

    "window.location.href"."location.href"是本页面跳转 "parent.location.href"是上一 ...

  7. SQL Server之记录筛选(top、ties、offset)汇总

    一.TOP 筛选 如果有 ORDER BY 子句,TOP 筛选将根据排序的结果返回指定的行数.如果没有 ORDER BY 子句,TOP 筛选将按照行的物理顺序返回指定的行数. 1. 返回指定数目的行 ...

  8. SQL学习--Select(一)TOP、派生表、连接、谓词

    TOP关键字 WITH TIES t.title,sum(s.qty)as totalSales from sales s left join titles t on s.title_id=t.tit ...

  9. TOP 和 OFFSET 筛选(转)

    SQL Server 对行数的排序提供了 TOP 筛选.SQL Server 2012 新增了 OFFSET 筛选. 一.TOP 筛选 如果有 ORDER BY 子句,TOP 筛选将根据排序的结果返回 ...

随机推荐

  1. 笔记:写Java程序,并输出

    建一个文件名为 demo.java的文件 //写框架文件 public class Demo{ //写入口文件 public static void main(String[] args){ Syst ...

  2. mac 开发环境安装使用 记录

    常用命令 1 查找文件位置: $locate php-fpm 软件变动的话更新locate本地库,可能比较耗时. $sudo /usr/libexec/locate.updatedb 2 查找运行文件 ...

  3. The Rox Java NIO Tutorial

    FQ之后访问 http://rox-xmlrpc.sourceforge.net/niotut/

  4. spring配置文件中bean标签

    <bean id="beanId"(1) name="beanName"(2) class="beanClass"(3) parent ...

  5. easyui-textbox 只读设置取消

    <script> $(function () { $("#txt_beginAmount").attr('readonly', true); $("#txt_ ...

  6. ios 调用系统应用的方法 应用间跳转的方法

    声明一个私有方法: #pragma mark - 私有方法 -(void)openUrl:(NSString *)urlStr{ //注意url中包含协议名称,iOS根据协议确定调用哪个应用,例如发送 ...

  7. 查看磁盘读写:iostat

    iostat命令用来查看磁盘IO的读写情况,用法如下: [root@localhost ~]$ yum install -y sysstat # 安装iostat命令 [root@localhost ...

  8. oracle dblink结合同义词的用法 PLS-00352:无法访问另一数据库

    我从源库导出数据PCK报错如下:

  9. C语言近程型(near)和远程型(far)的区别是什么?

    DOS用一种分段结构来寻址计算机的内存,每一个物理存储位置都有一个可以用段一偏移量方式来访问的相关地址.例如,下面就是一个典型的段式地址:     A000:1234 冒号左边的部分代表段地址(A00 ...

  10. poj_3579 二分法

    题目大意 给定N个数,这些数字两两求差构成C(N,2)(即N*(N-1)/2)个数值,求这C(N,2)个数的中位数.N <= 100000. 题目分析 根据数据规模N最大为100000,可知不能 ...