sqlServer使用ROW_NUMBER时不排序的解决方法

设置sqlServer使用ROW_NUMBER时不排序

--1.看到NHibernate是这样写的分页,感觉写起来比较容易理解(应该不会有效率问题吧?)
--with只是定一个别名?

[sql]
with query as (select ROW_NUMBER() over(order by (select 0)) AS ROWNUM, * FROM Product)
select * from query where ROWNUM BETWEEN 5 AND 10

--2.ROW_NUMBER必须指写over (order by **),有时我根本就不想排序,想按原始顺序(排序也是要时间的嘛)

--方法就是:
select ROW_NUMBER() over(order by (select 0)) AS ROWNUM,* FROM Product

排序 就是 :
select Row_number() over(order by Oper_Date desc) AS ROWNUM,* FROM Product

(0)

相关推荐

  • SQLSERVER 2005的ROW_NUMBER、RANK、DENSE_RANK的用法

    ROW_NUMBER() 说明:返回结果集分区内行的序列号,每个分区的第一行从 1 开始.语法:ROW_NUMBER () OVER ( [ <partition_by_clause> ] <order_by_clause> ) .备注:ORDER BY 子句可确定在特定分区中为行分配唯一 ROW_NUMBER 的顺序.参数:<partition_by_clause> :将 FROM 子句生成的结果集划入应用了 ROW_NUMBER 函数的分区.       <o

  • MySQL rownumber SQL生成自增长序号使用介绍

    下面介绍几种具体的实现方法. 建立实验环境如下mysql> create table tbl (    ->  id      int primary key,    ->  col     int    -> );Query OK, 0 rows affected (0.08 sec) mysql> insert into tbl values    -> (1,26),    -> (2,46),    -> (3,35),    -> (4,68

  • sqlserver2005使用row_number() over分页的实现方法

    语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN) <BR> 例子: 复制代码 代码如下: select * from ( select *, ROW_NUMBER() OVER(Order by a.CreateTime DESC ) AS RowNumber from table_name as a ) as b where RowNumber BETWEEN 1 and 5 将会返回table表 其中有一列名字为 RowNu

  • sqlserver巧用row_number和partition by分组取top数据

    分组取TOP数据是T-SQL中的常用查询, 如学生信息管理系统中取出每个学科前3名的学生.这种查询在SQL Server 2005之前,写起来很繁琐,需要用到临时表关联查询才能取到.SQL Server 2005后之后,引入了row_number()函数,row_number()函数的分组排序功能使这种操作变得非常简单.下面是一个简单示例: 复制代码 代码如下: --1.创建测试表 create table #score ( name varchar(20), subject varchar(2

  • Mysql row number()排序函数的用法和注意

    虽然使用不多,但是也有情况是需要在mysql 里面写语句开发功能的.在sql server 使用惯了,习惯了使用row_number() 函数进行排序,但是mysql 确没有这样一个函数.然后找到了po主写的一篇 文章.通过变量赋值来查询的.(PS 我测试的版本是mysql 5.6) 先建表 CREATE TABLE `test` ( `ID` int(11) NOT NULL AUTO_INCREMENT, `Col1` varchar(50) DEFAULT NULL, `Col2` var

  • SQL中Group分组获取Top N方法实现可首选row_number

    有产品表,包含id,name,city,addtime四个字段,因报表需要按城市分组,统计每个城市的最新10个产品,便向该表中插入了100万数据,做了如下系列测试: 复制代码 代码如下: CREATE TABLE [dbo].[products]( [id] [int] IDENTITY(1,1) NOT NULL, [name] [nvarchar](50) NULL, [addtime] [datetime] NULL, [city] [nvarchar](10) NULL, CONSTRA

  • sqlServer使用ROW_NUMBER时不排序的解决方法

    设置sqlServer使用ROW_NUMBER时不排序 --1.看到NHibernate是这样写的分页,感觉写起来比较容易理解(应该不会有效率问题吧?) --with只是定一个别名? [sql] with query as (select ROW_NUMBER() over(order by (select 0)) AS ROWNUM, * FROM Product) select * from query where ROWNUM BETWEEN 5 AND 10 --2.ROW_NUMBER

  • Java String转换时为null的解决方法

    开发中经常遇到从集合类List.Map中取出数据转换为String的问题,这里如果处理不好,经常会遇到空指针异常java.lang.NullPointerException,在此总结一下常用转换为String的方法,以及转换后如何对其进行判null使用的问题. Java中对象转换为String的常用方法: 方法一:String  objStr  =  (String) obj: 强制类型转换,对象obj为null,结果也为null,但是obj必须保证其本质是String类型的值,即可转换的值.

  • thinkPHP使用post方式查询时分页失效的解决方法

    本文实例讲述了thinkPHP使用post方式查询时分页失效的解决方法.分享给大家供大家参考,具体如下: 昨天晚上一直没有解决的php项目中的bug,就在刚才终于搞定,在这里还需要感谢各位大神给的帮助! 具体问题描述 最近遇到一个非常棘手的问题,也是因为刚入手thinkphp.在做项目的过程中,因为需要非常多的查询条件,如果以get方式提交表单的话,会因为url长度限制而报错,所以必须使用post方式提交表单数据,但是在分页的过程中,遇到了问题,因为thinkphp自带的分页是以a标签的形式,进

  • python抓取并保存html页面时乱码问题的解决方法

    本文实例讲述了python抓取并保存html页面时乱码问题的解决方法.分享给大家供大家参考,具体如下: 在用Python抓取html页面并保存的时候,经常出现抓取下来的网页内容是乱码的问题.出现该问题的原因一方面是自己的代码中编码设置有问题,另一方面是在编码设置正确的情况下,网页的实际编码和标示的编码不符合造成的.html页面标示的编码在这里: 复制代码 代码如下: <meta http-equiv="Content-Type" content="text/html;

  • idea新建maven项目时速度缓慢的解决方法

    原因 IDEA根据maven archetype的本质,其实是执行mvn archetype:generate命令,该命令执行时,需要指定一个archetype-catalog.xml文件. 该命令的参数-DarchetypeCatalog,可选值为:remote,internal  ,local等,用来指定archetype-catalog.xml文件从哪里获取. 默认为remote,即从 http://repo1.maven.org/maven2/archetype-catalog.xml路

  • vue-cli webpack模板项目搭建及打包时路径问题的解决方法

    这里建议刚学vue的同学第一个小案例不要使用vue-cli进行操作,待对基本的api使用的比较顺手了之后再进行vue-cli的体验比较好.本人是一名后端开发人员,接触前端时间不长,这里有说的不好的地方,还请大家评论建议下. 1. 安装必要的环境准备 首先我们要能够暗转node.js,这个环境.百度搜索node,进入官网根据自己的操作系统进行下载即可.现在的版本都是自带npm的了.所以安装后,环境变量正常情况下会自动配置,开启一个命令行终端,输入node,npm,就可以看到相应的信息.那么说明安装

  • VS2019 安装时闪退的解决方法

    现象:  安装VS2019时,下面的界面运行后退出,没有自动弹出下一步的安装界面 原因分析: VS2019的运行安装环境为win10, 而我的运行环境是win7+64位,可能存在不兼容性 解决办法: 第一步:进入C:\Program Files (x86)\Microsoft Visual Studio\Installer中,找到vs_installer.exe 和 vs_installershell.exe,并分别改变他们的兼容模式,具体如下: 第二步: 改变安装程序的运行属性,并以管理员身份

  • idea启动Tomcat时控制台乱码的解决方法(亲测有效)

    目录 前言 解决方法: 方法一: 方法二: 方法三: 方法四: 总结 前言 很多人在idea中启动项目时会出现控制台的中文乱码,其实也无伤大雅,但是本人看着不舒服所以在网上查找了一些方法和各位分享一下 解决方法: 方法一: 1.打开tomcat配置页面,Edit Configurations. 2.选择项目部署的tomcat,在配置项VM options输入框中输入-Dfile.encoding=UTF-8,点击Apply或OK即可. 3.修改idea设置里的文件编码格式为utf-8. 我修改了

  • vue渲染大量数据时卡顿卡死解决方法

    目录 1. 问题描述 2. 常见的解决方案 3. 解决方案流程图 4. 代码 1. 问题描述 由于业务需求,需要在一个页面中点击查询按钮时加载出所有的数据,但数据量有近10万条,渲染出现卡顿,页面卡死. 2. 常见的解决方案 - 自定义中间层 自定义nodejs中间层,获取并拆分这10w条数据, 前端对接nodejs中间层,而不是服务器 缺点:成本高 - 虚拟列表 只渲染可视区域DOM,其他隐藏区域不显示,只用div撑起高度,随着浏览器滚动,创建和销毁DOM. 虚拟列表实现起来非常复杂,可借用第

  • sql Server 2008 R2还原或删除数据库时总是出错的解决方法

    我们在还原或删除Windows Server 2008 R2数据库时经常出现因为数据库正在使用,所以无法获得对数据库的独占访问权等错误,非常烦恼,今天就教大家一招终极解决方法. 只需要新建一个查询,在里面执行下面代码即可: 复制代码 代码如下: ALTER DATABASE 你的数据库名称 SET OFFLINE WITH ROLLBACK IMMEDIATE ALTER DATABASE 你的数据库名称 SET OnLINE

随机推荐