让SELECT 查询结果自动增加递增序号 如果数据表本身不含自动地增编号的字段时,要怎么做才能够让SELECT 查询结果自动增加递增序号呢?提供下列三种方法供您参考: /* 方法一*/ SELECT 序号= (SELECT COUNT(客户编号) FROM 客户 AS a WHERE a.客户编号<= b.客户编号), 客户编号, 公司名称 FROM 客户 AS b ORDER BY 序号; GO /* 方法二:*/ SELECT 序号= COUNT(*), a.客户编号, a.公司名称 FROM 客户 AS a, 客户AS b WHERE a.客户编号>= b.客户编号 GROUP BY a.客户编号, a.公司名称 ORDER BY 序号; GO /* 方法三 建立一个「自动编号」的字段,然后将数据新增至一个区域性暂存数据表, 然后由该区域性暂存数据表中,将数据选取出来,最后删除该区域性暂存数据表 */ SELECT 序号= IDENTITY(INT,1,1), INTO #start 客户编号, 公司名称 FROM 客户; GO SELECT * FROM #star; GO DROP TABLE #star; GO
------解决方案-------------------- en
------解决方案-------------------- 如果是oracle可以用sequences,呵呵。
------解决方案-------------------- 在ms sql2005 用法最简单 ROW_NUMBER() OVER(order by ID) as 序号
------解决方案-------------------- select ROW_NUMBER() OVER(order by 字段,排序类型),* from t2
order by 字段,排序类型 是确定行号按怎样的顺序分
------解决方案--------------------
------解决方案--------------------
------解决方案-------------------- 楼主指的是在sql server 2000中的吧,这三个方法确实不错
------解决方案-------------------- 学习 [color=#FFFF00][/color]
------解决方案--------------------