不知道有没有人写过这样的sql,应该是会者不难,难者不会的问题...

gopark 2004-07-09 12:16:27
要在Select出的内容前加一列序号,如
Seq Field1 Field2
1 ... ...
2 ... ...
3 ... ...
4 ... ...
5 ... ...
...全文
126 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 元老 2004-07-09
  • 打赏
  • 举报
回复
临时表
xzhy80 2004-07-09
  • 打赏
  • 举报
回复
#t ?
什么意思啊
liang922 2004-07-09
  • 打赏
  • 举报
回复
同意二楼的
netcoder 2004-07-09
  • 打赏
  • 举报
回复
两种方法,也能说哪一个快一点
yesterday2000 2004-07-09
  • 打赏
  • 举报
回复
楼主对不起
没有测试!
yesterday2000 2004-07-09
  • 打赏
  • 举报
回复
select identity(int,1,1) seq,fieldl,field2 into #aa from tablename

select * from #aa order by seq
yesterday2000 2004-07-09
  • 打赏
  • 举报
回复
我试试
zjcxc 元老 2004-07-09
  • 打赏
  • 举报
回复
同意2 楼,1楼的不对,没有into 表的话,不能直接在select 中用identity


而2 楼的第二个方法,生成的seq是按主键顺序生成的(数据量大时,效率不是太好),这个主键,可以是表中任意值不重复的列都可以

select seq=(select sum(1) from tablename where keycol<=a.keycol),* from tablename a
zheninchangjiang 2004-07-09
  • 打赏
  • 举报
回复
select seq=identity(int,1,1),* into #t from tablename
select * from #t
如果表有主键(keycol),可以不用临时表
select seq=(select sum(1) from tablename where keycol<=a.keycol),* from tablename a
yesterday2000 2004-07-09
  • 打赏
  • 举报
回复
select identity(int,1,1) seq,fieldl,field2 from tablename
deodarsydn 2004-07-09
  • 打赏
  • 举报
回复
select identity(int,1,1) seq,fieldl,field2 into #t from tablename
select * from #t

34,871

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧