MySQL插入设置并选择

时间:2019-01-04 10:40:48

标签: mysql mysql-insert-id mysql-select-db

我想将一个条件的所有记录复制到另一个条件的新条目中。在这个例子中。我想获取xxx = 987的所有信息,并将xxx = 123的信息添加到同一张表中。所以我想复制一些值,但不是全部复制到新记录中。

INSERT table 
SET 
  pid = UPPER(UUID()),
  xxx = 123,
  (col1, col2) = (SELECT val1, val2 
                  FROM table
                  WHERE xxx = 987)

我尝试了很多事情,但是没有锻炼。任何帮助,高度赞赏 最好的内腔

1 个答案:

答案 0 :(得分:3)

您似乎正在寻找INSERT ... SELECT查询:

INSERT INTO table (pid, xxx, val1, val2)
SELECT UPPER(UUID()), 123, val1, val2
FROM table
WHERE xxx = 987;