怎样在SQL的一个查询中增加一个序列号

怎样在SQL的一个查询中增加一个序列号,第1张

通过rownum实现即可。

sql:select rownum , * from tablename where 条件语句。

解释:rownum是隐藏的,查询结果默认从1开始编号,所以肯定会是自然编号的,有多少条,编号就到多少。

现有两种方法解决,供参考:

1、SELECT IDENTITY(INT,1,1) AS 序号, avge FROM Table1

2、SELECT IDENTITY(INT,1,1) AS 序号, avge INTO #temp1 FROM Table1

SELECT * FROM #temp1

DROP TABLE #temp1

给查询出的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中的字段名)

INSERT时如果要用到从1开始自动增长的数字做唯一关键字,

应该先建立一个序列号.CREATE

SEQUENCE

序列号的名称

(最好是表名+序列号标记)

INCREMENT

BY

1

START

WITH

1

MAXVALUE

99999

NOCYCLE

NOCACHE其中最大的值按字段的长度来定,比如定义的自动增长的序列NUMBER(6)

,

最大值为999999INSERT

语句插入这个字段值为:

序列号的名称.NEXTVAL例子:

SQL>

insert

into

s_dept(id,

name,

region_id)

values

(s_dept_id.nextval,

‘finance’,

2)1

row

created.只有运行了序列号的名称.

nextval后序列号的名称.

currval

才有效才有值.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11450162.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存