现在有一个表Questioin,主码是qid,要求选择第m行到第n行的元组

//方法一:效率最低

//错误:如果n<m,将选取前n条数据,如果n>=m,将选取从m+1开始的n条数据

select top n *
from Question
where qid not in
{
select top m qid
from Question
}

//当然改成下面的就正确了

select top(n-m)*
from Question
where qid not in
(select top m id from Question)

//方法二:先排序,据说效率最高

select top m * from
(select top n * from Question order by qid asc)a
order by qid desc

//方法三:利用ROW_NUMBER函数对元组编号(推荐使用)

SELECT * FROM
(
SELECT ROW_NUMBER() OVER(ORDER BY qid) as rowIndex,* FROM Question
)b
WHERE b.rowIndex>=m AND b.rowindex<=n

sql server选取第m行到第n行的元组的更多相关文章

  1. 面试1 SQL SERVER 查询第20行到30之间的数据

    SQL SERVER 查询第20行到30之间的数据 1.先查询前20行的ID,后查询除去20条记录的前10条记录 SELECT TOP 10 * FROM tbBank WHERE BankID NO ...

  2. SQL Server中关于基数估计如何计算预估行数的一些探讨

    关于SQL Server 2014中的基数估计,官方文档Optimizing Your Query Plans with the SQL Server 2014 Cardinality Estimat ...

  3. SQL Server选取本周或上一周数据

    有关SQL Server中有关周的数据查询主要思路来自下面这个语句 select getdate(), dateadd(wk, datediff(wk, 0, DateAdd(Day,-1,getda ...

  4. SQL SERVER 查询第20行到30之间的数据

    1.先查询前20行的ID,后查询除去20条记录的前10条记录 SELECT TOP * FROM tbBank WHERE BankID NOT IN(SELECT TOP BankID FROM t ...

  5. SQL Server安全(10/11):行级别安全(Row-Level Security)

    在保密你的服务器和数据,防备当前复杂的攻击,SQL Server有你需要的一切.但在你能有效使用这些安全功能前,你需要理解你面对的威胁和一些基本的安全概念.这篇文章提供了基础,因此你可以对SQL Se ...

  6. 【sql server】"已更新或删除的行值要么不能使该行成为唯一行,要么改变了多个行" 解决方案

    #事故现场: 1.在手动修改某表中数据是,出现如下错误提示:  已更新或删除的行值要么不能使该行成为唯一行,要么改变了多个行 2.表结构及数据: #解决方法: 1.原因分析:提示被删除的行不是唯一行, ...

  7. SQL Server批量向表中插入多行数据语句

    因自己学习测试需要,需要两个有大量不重复行的表,表中行数越多越好.手动编写SQL语句,通过循环,批量向表中插入数据,考虑到避免一致问题,设置奇偶行不同.个人水平有限,如有错误,还望指正. 语句如下: ...

  8. SQL Server查看所有表大小、表行数和占用空间信息

    一.查看表名和对应的数据行数select  a.name as '表名',b.rows as '表数据行数'from sysobjects a inner join sysindexes bon a. ...

  9. sql server查询数据库中所有表的行数

    select a.name,b.rows from sysobjects a,sysindexes b where a.name = b.name order by b.rows desc

随机推荐

  1. C++基础算法学习——熄灯问题

    有一个由按钮组成的矩阵, 其中每行有6个按钮, 共5行– 每个按钮的位置上有一盏灯– 当按下一个按钮后, 该按钮以及周围位置(上边, 下边,左边, 右边)的灯都会改变状态26熄灯问题 POJ1222– ...

  2. [ADS]An installation support file could not be installed

    ADS:ARM Developer Suits 错误:An installation support file could not be installed 描述: 之前安装了一个不能用的ADS的版本 ...

  3. 5、爬虫之scrapy框架

    一 scrapy框架简介 1 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前Sc ...

  4. File类_常见的方法(获取系统根目录与指定目录的容量)

    获取系统根目录 import java.io.File; public class File_ListRoots { public static void main(String[] args) { ...

  5. centos7下安装docker(12.2自定义网络)

    通常默认的情况下我们使用的是docker的bridge的网络,用户也可以根据自己的业务需要,创建user-defined docker 提供三种user-defined网络驱动:bridge,over ...

  6. 转载 线程池之ThreadPool类与辅助线程 - <第二篇>

    http://www.cnblogs.com/kissdodog/archive/2013/03/28/2986026.html 一.CLR线程池 管理线程开销最好的方式: 尽量少的创建线程并且能将线 ...

  7. Dubbo高级篇4

    https://blog.csdn.net/moonpure/article/details/52842115 线程模型 http://dubbo.io/User+Guide-zh.htm 用户指南& ...

  8. Qt中 .pro 文件和 .pri 文件简介

    *.pro 这是一个典型的Qt示例程序的.pro文件(propriprfprl.pro): TEMPLATE = app CONFIG += QT QT += core gui TARGET = pr ...

  9. Java Web 项目目录结构

    为了使 Web 容器顺利地执行 Web 应用,开发者需要以一种标准的方式将 Web 项目中的资源(Servlets.JSP 等)打包.一个 Web 项目的目录结构可分为两种: 发布目录结构 Web 容 ...

  10. 完整卸载 kUbuntu-desktop from Ubuntu 14.04 LTS系统 ubuntu14.04 LTS 64Bit

    sudo apt-get remove libkde3support4 k3b-data ntrack-module-libnl-0 libkrosscore4 libgpgme++2 libqapt ...