数据库中如何把某字段变为1,2,3,4,5的序列?有这个命令吗?

我有一个序列,已经排序好了,比如说3,6,35,54,473 。我想直接把他们的顺序号覆盖到他们的值上,即把该列的数据变为1,2,3,4,5。求教如何做?
数据库是mysql

你建立个表2个字段,一个自增,一个你写的这个3,6,35什么的,你给他插入进去,他肯定是按你的顺序排列了,然后你在根据你原来这个表的数据关联新表,然后更新,不就可以了,,,唯一就是你看你这些数字有没有重复的了,,,没重复的这样肯定可以,,
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-02
select case when 字段=3 then 1 when 字段=6 then 2 when 字段=35 then 3 when 字段 = 54 then 4 when 字段=473 then 5 end from 表
希望能帮助到你。追问

大哥,都说了是比如了,数据不可能只有5条啊!

追答

既然你已经排好序了,那你直接删除这列,重新加列序号列。
select row_number() over (order by id) from 表

第2个回答  2013-07-02
你是什么数据库,每个数据库的方法不一样追问

mysql

追答

CREATE TABLE `aa` (
`id` int(11) NOT NULL auto_increment, --在你需要自增长的列后面加auto_increment就可以了
PRIMARY KEY (`id`)
)

相似回答