方式1、 INSERT INTO t1(field1,field2) VALUE(v001,v002); // 明确只插入一条Value
方式2、 INSERT INTO t1(field1,field2) VALUES(v101,v102),(v201,v202),(v301,v302),(v401,v402);
在插入批量数据时方式2优于方式1.
方式3.1、 INSERT INTO t2(field1,field2) SELECT col1,col2 FROM t1 WHERE ……
这里简单说一下,由于可以指定插入到talbe2中的列,以及可以通过相对较复杂的查询语句进行数据源获取,可能使用起来会更加的灵活一些,但我们也必须注意,我们在指定目标表的列时,一定要将所有非空列都填上,否则将无法进行数据插入,还有一点比较容易出错的地方就是,当我们写成如下简写格式:
方式3.2、 INSERT INTO t2 SELECT id, name, address FROM t1
此时,我们如果略掉了目标表的列的话,则默认会对目标表的全部列进行数据插入,且SELECT后面的列的顺序 必须和目标表中的列的定义顺序完全一致 才能完成正确的数据插入,这是一个很容易被忽略的地方,值得注意。

本文深入探讨了三种不同的SQL插入方式,包括单条插入、批量插入和通过SELECT语句插入。对比了不同方式的优劣,并强调了在使用通过SELECT插入时需要注意的目标表列的完整性和列顺序的重要性。

3386

被折叠的 条评论
为什么被折叠?



