您好我想将表IName下的列Item中的全部内容复制到属于同一数据库的表Item下的列Name。
我提供以下查询,但它会抛出错误,指出子查询返回了多个记录。 (大约有600条记录)
Insert into Item set name = (Select Item from IName)
由于
答案 0 :(得分:9)
INSERT INTO Item (Name)
SELECT Item
FROM IName
如果要插入单列*表格,INSERT
可以使用:
INSERT INTO table (column)
VALUES (value1),(value2), ... (valueN) ;
或与:
INSERT INTO table (column)
SELECT a_column
FROM a_table
--- optional (multiple) JOINs
--- and WHERE
--- and GROUP BY
--- any complex SELECT query
(好的,上面也可以使用多列表,只要所有其他 - 在INSERT语句中没有明确说明 - 列已定义为DEFAULT
值或AUTO_INCREMENT
。)
INSERT ... SET
语法仅在MySQL中有效,只有在您想要准确插入一行时才能使用:
INSERT INTO table
SET column = value1 ;
相当于:
INSERT INTO table (column)
VALUES (value1) ;
答案 1 :(得分:4)
INSERT INTO Item (name)
SELECT Item FROM IName
答案 2 :(得分:3)
INSERT INTO table_one (column1) SELECT column2 FROM table_two
请参阅MySQL Ref