选择递增的整数

ari*_*ayu 7 mysql integer

我想知道是否可以从mysql表中选择递增的整数?如果可能的话,我怎样才能做到这一点?

我的情况是,我有一堆数据,我需要做INSERT INTO newtable ... SELECT somefield FROM sometable.但是,有一个字段newtable被调用counter,我需要增量整数,例如:

row #1: counter=1
row #2: counter=2
row #3: counter=3
row #4: counter=4
row #5: counter=5
row #6: counter=6
... and so on...
Run Code Online (Sandbox Code Playgroud)

我可以使用简单的PHP脚本来做到这一点,但我想尝试从mysql查询中完成所有操作.所以,你能告诉我是否有可能吗?

Cha*_*ndu 15

试试这个:

INSERT INTO newTable(someField, counter)
SELECT a.someField, (@rank:=@rank+1) AS counter
  FROM sometable a INNER JOIN 
       (SELECT @rank :=0) b
Run Code Online (Sandbox Code Playgroud)