在应用程序中进行数据关联和直接使用关联查询的优劣?

WBOY
Libérer: 2016-10-22 00:14:08
original
1354 Les gens l'ont consulté

在应用程序中进行数据关联(即执行多次查询,并把结果进行关联)和直接使用关联查询的优劣?
这两种方法分别在什么场景下性能好?

回复内容:

在应用程序中进行数据关联(即执行多次查询,并把结果进行关联)和直接使用关联查询的优劣?
这两种方法分别在什么场景下性能好?

一般来说使用直接关联查询,因为这个并不是想不用就能不用的。如果想减少关联查询提升效率,那么要额外做很多工作,简单来说就是各种缓存。

最简单的例子: Order.StuatsId 关联 OrderStatus.Id
为了能显示订单状态
方法1: 关联查询
方法2: OrderStatus被缓存,同时提供了方法getStatusTitleById的Helper给前台使用,从而避免关联。

所以并发压力不大的项目不用太关注这个,几乎无影响,而并发压力大的项目会专门把这个作为长期任务针对处理。
结论:一般来说使用关联查询造成的性能损失对访问者来说是无知觉的,但是一定要避免过多的关联(例如只需要2个表的数据,实际查询的SQL关联了5个表)

光从效率上来看,肯定关联查询效率要更高
从代码可读性来看,应该是分开来可读性更高。而且可以重用。

具体怎么选择要看你项目大小。

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!