sql查询时增加自动编号和分页
查询时加序号
a:没有主键的情形: Select identity(int,1,1) as
iid,* into #tmp from TableName
Select * from #tmp
Drop
table #tmp b:有主键的情形: Select (Select sum(1) from
TableName where KeyField <= a.KeyField) as iid,* from
TableName a eg:
select (select sum(1) from user_Admin where
id<=a.id) as ID,id,displayName from user_Admin a order by a.ID asc SELECT 序号= (SELECT COUNT(客户编号) FROM 客户 AS LiMing WHERE LiMing.客户编号<= Chang.客户编号), 客户编号, 公司名称 FROM 客户 AS Chang ORDER BY 1; GO
/* 方法二: 使用SQL Server 2005 独有的RANK() OVER () 语法*/ SELECT RANK() OVER (ORDER BY 客户编号 DESC) AS 序号, 客户编号, 公司名称 FROM 客户; GO
/* 方法三*/ SELECT 序号= COUNT(*), LiMing.客户编号, LiMing.公司名称 FROM 客户 AS LiMing, 客户AS Chang WHERE LiMing.客户编号>= Chang.客户编号 GROUP BY LiMing.客户编号, LiMing.公司名称 ORDER BY 序号; GO
/* 方法四 建立一个「自动编号」的字段,然后将数据新增至一个区域性暂存数据表, 然后由该区域性暂存数据表中,将数据选取出来,最后删除该区域性暂存数据表 */ SELECT 序号= IDENTITY(INT,1,1), 管道, 程序语言, 讲师, 资历 INTO #LiMing FROM 问券调查一; GO SELECT * FROM #LiMing; GO DROP TABLE #LiMing; GO
/* 方法五 使用 SQL Server 2005 独有的ROW_NUMBER() OVER () 语法 搭配 CTE (一般数据表表达式,就是 WITH 那段语法)选取序号2 ~ 4 的数据 */ WITH 排序后的图书 AS (SELECT ROW_NUMBER() OVER (ORDER BY 客户编号 DESC) AS 序号, 客户编号, 公司名称 FROM 客户) SELECT * FROM 排序后的图书 WHERE 序号 BETWEEN 2 AND 4; GO ------------分页使用--------------------------- SELECT RANK() OVER (ORDER BY id asc) AS no,* into #temp FROM Bbs_reply select * from #temp where no between 1 and 100 drop table #temp -------------------------------序号
给查询出的SQL记录添加序号列,解决方法有以下两种 第一:
select ROW_NUMBER() OVER (ORDER BY a.字段 ASC) AS XUHAO,a.* from table a1
(table 为表名,字段为表a中的字段名) 第二:
select RANK() OVER (ORDER BY a.字段 ASC) AS XUHAO,a.* from table a1
(table 为表名,字段为表a中的字段名)
sql查询时增加自动编号和分页的更多相关文章
- oracle中使用sql查询时字段为空则赋值默认
转至:http://www.th7.cn/db/Oracle/201501/86125.shtml oracle 通过 nvl( )函数sql 查询时为 空值 赋默认值 oracle 函数介绍之nvl ...
- 使用HIBERNATE的SQL查询并将结果集自动转换成POJO
在某些场合下,我们可能想使用HIBERNATE的框架提供的SQL查询接口,但是,由于实体没有做映射,HIBERNATE不能把结果集转换成你想要的List<POJO>,本文讨论如何在这种情况 ...
- 【转】SQL 2008 Insert返回自动编号id三种方法比较
SQL Server 2008中,insert数据的时候返回自动编号的id,有三种方法实现SCOPE_IDENTITY.IDENT_CURRENT 和 @@IDENTITY, 它们都返回插入到 IDE ...
- SQL查询结果增加序列号
SQL查询记录中增加序列号 根据学生成绩在查询结果中增加排名字段: 1.SELECT ROW_NUMBER() OVER (ORDER BY SCORE ASC) AS RANK,NAME,SCORE ...
- SQL Server 重新恢复自动编号列的序号
1. truncate table tablename2. DBCC CHECKIDENT (tablename,reseed,1) truncate命令不但会清除所有的数据,还会将IDENTIT ...
- SQL第三课-自动编号与初涉约束
自动编号:auto_increment一张数据表中,要设定字段的唯一性,就会用到编号,确保编号的唯一性是避免重名和数据混乱的一种方式.主键,一张表只能并只有一个.在创建字段表时,指定 PRIMARY ...
- PL/SQL Developer中输入SQL语句时如何自动提示字段
在PL/SQL Developer中编写sql语句时,如果无法自动提示字段那是一件痛苦的事情,工作效率又低,在此演示下如何在PL/SQL Developer工具中自动提示字段,让开发者省时又省心,操作 ...
- EF core的原生SQL查询以及用EF core进行分页查询遇到的问题
在用.net core进行数据库访问,需要处理一些比较复杂的查询,就不得不用原生的SQL查询了,然而EF Core 和EF6 的原生sql查询存在很大的差异. 在EF6中我们用SqlQuery和Exe ...
- sql查询时,根据特定的条件给表的某一个字段赋值
先讲一下需要这个需求的情景: 这是一个招聘求职项目遇到的一个问题.个人A向公司B的职位投递简历后,公司B会收到个人A的简历;但是A投递后把简历删除,公司收到的简历信箱 还有这个简历,但却不能看了. 原 ...
随机推荐
- (CSDN 迁移) JAVA多线程实现-可回收缓存线程池(newCachedThreadPool)
在前两篇博客中介绍了单线程化线程池(newSingleThreadExecutor).可控最大并发数线程池(newFixedThreadPool).下面介绍的是第三种newCachedThreadPo ...
- identity 基础表没有创建 aspnetuserclaims aspnetuserlogins
protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuild ...
- checkbox之全选和反选
先导入jquery组件 <input type="checkbox" id="checkall">全选<input type="ch ...
- pytest_03_pycharm运行pytest (转:上海悠悠)
前言 上一篇pytest文档2-用例运行规则已经介绍了如何在cmd执行pytest用例,平常我们写代码在pycharm比较多 写完用例之后,需要调试看看,是不是能正常运行,如果每次跑去cmd执行,太麻 ...
- mongoDB 分组并对分组结果筛选类似于SQL中的(group by xxx having ) 附带Java代码
今天需要做一个筛选程序,因为数据放在mongodb中,没写过分组的查询语句,查了一些资料,终于写出来了,分享给各位小伙伴 需求是 查询 学员 在2019-07-29之后未同步的数据(同一个学员需要2条 ...
- 2019-07-23 static 和 const 关键字的应用
首先先来了解下内存段,内存段共分为四个,栈.堆.代码段.初始化静态段.程序中不同的声明存放在不同的内存段内,栈空间段是存储占用相同空间长度并且占用空间小的数据类型的地方,比如说整型1, 10, 100 ...
- Java基础 StringBuffer、StringBuilder原理浅析
StringBuilder与StringBuffer作用就是用来处理字符串,但String类本身也具备很多方法可以用来处理字符串,那么为什么还要引入这两个类呢? 首先看下面的例子 public sta ...
- java实现在线预览--poi实现word、excel、ppt转html
java实现在线预览 - -之poi实现word.excel.ppt转html 简介 java实现在线预览功能是一个大家在工作中也许会遇到的需求,如果公司有钱,直接使用付费的第三方软件或者云在线预览服 ...
- 在eclipse下给android应用添加jar包
右键工程,Build path,java build path,选择libraries在右边的按钮中点击“Add Library”选择“User library”,点击“下一步”点击“User lib ...
- Word2Vec算法简介
一.简介 word2vec是Google在2003年开源的一款将词表征为实数值向量的高效算法,采用的模型有CBOW[Continuous Bag-Of-Words 连续的词袋模型]和Skip-Gram ...