Mysql 插入子查询最大值的记录?

Mysql 插入子查询最大值的记录?,mysql,Mysql,我有一个insert语句,我想给它添加一个值,为每个insert增加另一条记录。我得到了一个名为revision的列,我想为每一行添加1。所以 Row 1 = revision = 1 Row 2 = revision = 2 但只有当ID匹配时,它才会是 从id=13的版本中选择MAX(revision)+1 例如,哪个会得到6 然后我想把它添加到我的insert语句中 INSERT INTO versions (id, date_added, revision) VALUES

我有一个insert语句,我想给它添加一个值,为每个insert增加另一条记录。我得到了一个名为
revision
的列,我想为每一行添加1。所以

Row 1 = revision = 1
Row 2 = revision = 2
但只有当ID匹配时,它才会是

从id=13的版本中选择MAX(revision)+1

例如,哪个会得到
6

然后我想把它添加到我的insert语句中

INSERT INTO
versions
    (id, date_added, revision)
VALUES
    (13, NOW(), STUFF FROM OTHER QUERY)

但我似乎不知道如何在insert中执行子查询。如果我这样做,它会抱怨表是一样的。

试试这样的方法吧

INSERT INTO
versions
    (date_added, revision)

    (SELECT NOW(),MAX(revision)+1 FROM versions WHERE id=13)

我有点迷路了。。您是否尝试过使用
插入。。。选择。。。加入
您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,了解在第1行“从id=13的版本中选择13,NOW(),MAX(修订版)+1”附近使用的正确语法。我刚刚删除了id。如果我删除了
值()
部分,请立即尝试。