在基于 mysql 中的选择的插入期间增加非自动增量字段

jsi*_*ber 4 mysql select insert

我正在使用 select 语句将一个表中的记录插入到另一个表中。被插入的表有一个新字段,每次更新时都应该加一,但不应该是自动增量字段,因为每次更新时,每组记录的数字都需要重新开始。如果正在使用的 select 语句选择 42 条记录,则新表将有一个字段,对于从 1 开始的每条记录,该字段将增加 1。下一组应该再次将此字段设为 1,然后为每个选择的记录递增。这是可能的吗?我无法找到要使用的语法,因为我的大部分搜索只找到有关自动递增键的结果。

INSERT into images (filename, imgpath, imagenumber)
SELECT filename, imgpath, 1+
FROM old_images
WHERE event_id = 20
Run Code Online (Sandbox Code Playgroud)

这是表的一个简单示例,但我想知道是否有办法直接在 mySql 中增加放入图像表中 imagenumber 字段的内容。

Adr*_*der 5

看看使用用户定义的变量

类似的东西

SET @t1=0; 
INSERT into images (filename, imgpath, imagenumber) 
SELECT  filename, 
        imgpath, 
        @t1 := @t1+1 
FROM    old_images 
WHERE   event_id = 20 
Run Code Online (Sandbox Code Playgroud)