>데이터 베이스 >MySQL 튜토리얼 >MySQL不需循环update多条记录

MySQL不需循环update多条记录

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-07 17:28:581377검색

UPDATE 查询比较棘手,因为你不能简单地写进去多个值。不同情况下,我用不同的方法解决。如果你确信将要update的记录是存在的,那

UPDATE 查询比较棘手,因为你不能简单地写进去多个值。不同情况下,,我用不同的方法解决。如果你确信将要update的记录是存在的,那么可以使个花招,用INSERT ... ON DUPLICATE KEY UPDATE代替(没想通的在下面留言)。但是如果你并非100%确定这条记录存在,那么最好建一个临时表,插进去全部试图更新的值,然后执行一条多表update查询。

如果跑的是MariaDB,或是Percona Server,你也可以试下在HandlerSocket接口上做update。可以大幅消除由于执行多条查询带来的开销。甚至,对于每个update执行一条查询的情况一样有效。

跟往常一样,不同方法的性能差异在于数据和要做的事情。一定要在数据、服务器和应用程序上进行测试。

 

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.