函数编写 SQL 如何给记录加序号

 我来答
Reyzhang
2011-03-29 · TA获得超过1111个赞
知道小有建树答主
回答量:805
采纳率:85%
帮助的人:667万
展开全部
有五种方法:
一、需要用临时表来实现
select IDENTITY(int, 1,1) AS ID_Num,* into #temp from 表
select * from #temp
Drop Table #temp
二、不用临时表,就必须有排序列,值唯一,做参考:
select (select count(*) from yourtable where col <= A.col) row, * from yourtable A order by col
三、在原表中增加一列来实现
alter table yourtable add ID int identity
select * from yourtable
alter table yourtable drop column ID
四、 使用SQL Server 2005 独有的RANK() OVER () 语法(测试 客户编号 也应该值唯一才对)
SELECT RANK() OVER (ORDER BY 客户编号 DESC) AS 序号, 客户编号,公司名称 FROM 客户
五、
SELECT 序号= COUNT(*), a.客户编号, b.公司名称
FROM 客户 AS a, 客户AS b WHERE a.客户编号>= b.客户编号
GROUP BY a.客户编号, a.公司名称
ORDER BY 序号
匿名用户
2011-03-29
展开全部
记录是查询出来的还是原始的数据记录呢?
如果是查询出来的或者增加记录:
IDENTITY(函数)
只用在带有 INTO table 子句的 SELECT 语句中,以将标识列插入到新表中。

尽管类似,但是 IDENTITY 函数不是与 CREATE TABLE 和 ALTER TABLE 一起使用的 IDENTITY 属性。

语法
IDENTITY ( data_type [ , seed , increment ] ) AS column_name

参数
data_type

标识列的数据类型。标识列的有效数据类型可以是任何整数数据类型分类的数据类型(bit 数据类型除外),也可以是 decimal 数据类型。

seed

要指派给表中第一行的值。给每一个后续行指派下一个标识值,该值等于上一个 IDENTITY 值加上 increment 值。如果既没有指定 seed,也没有指定 increment,那么它们都默认为 1。

increment

用来添加到 seed 值以获得表中连续行的增量。

column_name

将插入到新表中的列的名称。

返回类型
返回与 data_type 相同的类型。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
du瓶邪
推荐于2017-09-29 · TA获得超过2.4万个赞
知道大有可为答主
回答量:1.7万
采纳率:100%
帮助的人:2895万
展开全部
给查询出的SQL记录添加序号列,解决方法有以下两种
第一:
select ROW_NUMBER() OVER (ORDER BY a.字段 ASC) AS XUHAO,a.* from table a
(table 为表名,字段为表a中的字段名)
第二:
select RANK() OVER (ORDER BY a.字段 ASC) AS XUHAO,a.* from table a
(table 为表名,字段为表a中的字段名)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-04-01
展开全部
lect里面的列的个数只能是固定的,所以我觉得,如果zm里的数据是动态的话,你必须动态生成这个语句。
select fjname, name, hm,
max(decode(zm, 'aaa', zm, null )) zm1, max(decode(zm, 'aaa', charge, null )) zm1charge,
max(decode(zm, 'bbb', zm, null )) zm2, max(decode(zm, 'bbb', charge, null )) zm2charge,
max(decode(zm, 'ccc', zm, null )) zm3, max(decode(zm, 'ccc', charge, null )) zm3charge,
max(decode(zm, 'ddd', zm, null )) zm4, max(decode(zm, 'ddd', charge, null )) zm4charge
from owe
group by fjname, name, hm;
另外,团IDC网上有许多产品团购,便宜有口碑
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
钟12345
2011-03-29 · 超过17用户采纳过TA的回答
知道答主
回答量:114
采纳率:0%
帮助的人:50万
展开全部
新建一个属性,在是否自动添加还是什么来着,点击“是”,增值为1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式