基本上我有一个版本产品的表,
所以它有两列感兴趣,id | product_id
id
是autoincrement
列,
product_id
只是int
首次创建产品时,product_id
来自id
,
编辑产品时,我们会复制该行,因此product_id
是相同的,但ID不同。所以当我们第一次创建产品时,我们会做两个查询,
插入,然后update table whatever set product_id = id where id = {the insert id}
这有效,但我想知道是否有办法在一个查询中执行此操作?
注意我们只能访问插入,更新,删除。没有触发器或存储过程。
答案 0 :(得分:2)
使用LAST_INSERT_ID()
功能:
update table whatever set
product_id = id
where id = last_insert_id()
答案 1 :(得分:0)
这是单一查询:
insert into whatever
set product_id = last_insert_id() + 1;