这种方法常用在目标表已经存在数据库中.需要从源表把数据插入到目标表的情况.如果目标表和源表的列相同,就不必列出数据列了.(未完待续,另参考资料中重复项太多,暂且作为记录,后期再做增删整理)
例:
create TABLE Table1
(
a varchar(10),
b varchar(10),
c varchar(10)
) ;
Insert into Table1 values('赵','asds','90');
Insert into Table1 values('钱','asds','100');
Insert into Table1 values('孙','asds','80');
Insert into Table1 values('李','asds',null);
表中结果:
a | b | c |
---|---|---|
赵 | asds | 90 |
钱 | asds | 100 |
孙 | asds | 80 |
李 | asds | NULL |
执行:
INSERT INTO `Table1`
(
a,b,c
)
SELECT '学' AS a,'xcx' AS b,'10' AS c;
表中结果:
a | b | c |
---|---|---|
赵 | asds | 90 |
钱 | asds | 100 |
孙 | asds | 80 |
李 | asds | |
学 | xcx | 10 |
参考资料:
语法:MySQL中INSERT INTO SELECT的应用[转]
把一个表的数据插入到另一个表:INSERT INTO SELECT / SELECT INTO
SELECT INTO 和 INSERT INTO SELECT 两种表复制语句