我需要同一个表中的两个 id 列在插入时创建唯一值。由于 MySQL 只允许一列自动递增,因此我需要对另一列执行 max(id)+1 之类的操作。
这是我希望工作的 SQL:
INSERT INTO invoices (invoiceid)
VALUES ((SELECT MAX(invoiceid)+1 FROM invoices))
select 语句独立工作,但在我的 INSERT 中,它是不允许的。我收到错误:您无法在 FROM 子句中指定目标表“发票”进行更新
我需要同一个表中的两个 id 列在插入时创建唯一值。由于 MySQL 只允许一列自动递增,因此我需要对另一列执行 max(id)+1 之类的操作。
这是我希望工作的 SQL:
INSERT INTO invoices (invoiceid)
VALUES ((SELECT MAX(invoiceid)+1 FROM invoices))
select 语句独立工作,但在我的 INSERT 中,它是不允许的。我收到错误:您无法在 FROM 子句中指定目标表“发票”进行更新