js给iframe传递参数
MySQL单表多次查询和多表联合查询,哪个效率⾼?
很多⾼性能的应⽤都会对关联查询进⾏分解。
简单地,可以对每个表进⾏⼀次单表查询,然后将结果在应⽤程序中进⾏关联。例如,下⾯这个查询:
可以分解成下⾯这些查询来代替:
到底为什么要这样做?
咋⼀看,这样做并没有什么好处,原本⼀条查询,这⾥却变成了多条查询,返回结果⼜是⼀模⼀样。
事实上,⽤分解关联查询的⽅式重构查询具有如下优势:
1. 让缓存的效率更⾼。
许多应⽤程序可以⽅便地缓存单表查询对应的结果对象。另外对于MySQL的查询缓存来说,如果关联中的某个表发⽣了变化,那么就⽆法使⽤查询缓存了,⽽拆分后,如果某个表很少改变,那么基于该表的查询就可以重复利⽤查询缓存结果了。
server2012r2安装密钥激活>酒网站首页模板
2. 将查询分解后,执⾏单个查询可以减少锁的竞争。
weex还有人用吗
3. 在应⽤层做关联,可以更容易对数据库进⾏拆分,更容易做到⾼性能和可扩展。
4. 查询本⾝效率也可能会有所提升
mysql语句多表查询5. 可以减少冗余记录的查询。php项目如何部署
6. 更进⼀步,这样做相当于在应⽤中实现了哈希关联,⽽不是使⽤MySQL的嵌套环关联,某些场景哈希关联的效率更⾼很多。