> 백엔드 개발 > PHP 튜토리얼 > 像这样的sql语句,mysql编译几次

像这样的sql语句,mysql编译几次

WBOY
풀어 주다: 2016-06-06 20:06:46
원래의
1095명이 탐색했습니다.

insert into table values (null,'abc','123@qq.com');
insert into table values (null,'abc','123@qq.com');
insert into table values (null,'abc','123@qq.com');
这样执行3次,在mysql中编译3次

那这样的语句
insert into table values
(null,'abc','123@qq.com'),
(null,'abc','123@qq.com'),
(null,'abc','123@qq.com');
在mysql中编译几次?1次还是3次

回复内容:

insert into table values (null,'abc','123@qq.com');
insert into table values (null,'abc','123@qq.com');
insert into table values (null,'abc','123@qq.com');
这样执行3次,在mysql中编译3次

那这样的语句
insert into table values
(null,'abc','123@qq.com'),
(null,'abc','123@qq.com'),
(null,'abc','123@qq.com');
在mysql中编译几次?1次还是3次

内核没研究那么透,所以两者的具体的执行原理不是特别清楚

但是非常肯定的是批量插入效率高,SQL解析是按语句来的,所以你第一个例子是解析3条SQL语句,第二个例子是解析1条SQL语句

从IO消耗上来讲,每个SQL语句都要写一次binlog,所以批量insert只要写入一次,如果insert多的情况,性能差别会更大

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿