IDENTITY(int, 1,1) 不总是从1开始。什么原因呢。

zj181314 2005-04-05 11:37:45

存储过程如下:

select * into #t1 from 表1

SELECT IDENTITY(int, 1,1) AS 序号,* into #result
FROM #t1

select * from #result

结果序号不总是从1开始。什么原因呢。
...全文
165 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zj181314 2005-04-05
  • 打赏
  • 举报
回复
郁闷了半天的问题,果然是没有order by 序号。有时候就会卡在这种问题上。
惭愧,惭愧
*^_^*
talantlee 2005-04-05
  • 打赏
  • 举报
回复
你說的問題我不能解決,但你的語句不用2個虛擬表吧。。。

SELECT IDENTITY(int, 1,1) AS 序号,* into #result
FROM #表1

select * from #result
xluzhong 2005-04-05
  • 打赏
  • 举报
回复
order by 序号
ph1 2005-04-05
  • 打赏
  • 举报
回复
我试了一下,每次都是从1开始的
可能你的#result表没删掉
这样就算你把纪录一起删掉了,以后insert,identity列还是会按曾经的最大值累加的
paoluo 2005-04-05
  • 打赏
  • 举报
回复
应该不会啊,我用你的语句测试了多次,都是从1开始的啊。
子陌红尘 2005-04-05
  • 打赏
  • 举报
回复
不可能吧,要不就是输出不是排序的,试试:

select * from #result order by 序号
good2speed 2005-04-05
  • 打赏
  • 举报
回复
gz

34,590

社区成员

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

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