MySql分表,大公司是怎么做的,怎么做到的高效,分表联表查询怎么办?

WBOY
Libérer: 2016-09-21 14:13:09
original
1371 Les gens l'ont consulté

现在我有两张表

一张用户表,uid,username,pwd,email.....等字段和

一张文章表,aid,subject,content,time,uid.....等字段

取得文章最新的前20条数据包含字段有:uid,username,email,aid,subject,content,time

现在有这么几个问题:

1、下面这两种方式那个快?我认为是第二种

第一种:php得到数据后,直接循环,每次取出uid,再去查询用户表信息

第二种:直接左外联查询

2、分表的情况下,如何联表查询

假如用户表分了5张表,user1,user2,user3,user4,user5,假如每张表有10万的用户数据,如果再使用链表查询,应该怎么做才最快,假如说最新的文章20篇,前10篇的作者信息在user1,后10篇的作者信息在user4,应该怎么链表查询呢?当然,文章的作者信息在那张表事先是不知道的,主要根据每篇文章的uid记录获取。

回复内容:

现在我有两张表

一张用户表,uid,username,pwd,email.....等字段和

一张文章表,aid,subject,content,time,uid.....等字段

取得文章最新的前20条数据包含字段有:uid,username,email,aid,subject,content,time

现在有这么几个问题:

1、下面这两种方式那个快?我认为是第二种

第一种:php得到数据后,直接循环,每次取出uid,再去查询用户表信息

第二种:直接左外联查询

2、分表的情况下,如何联表查询

假如用户表分了5张表,user1,user2,user3,user4,user5,假如每张表有10万的用户数据,如果再使用链表查询,应该怎么做才最快,假如说最新的文章20篇,前10篇的作者信息在user1,后10篇的作者信息在user4,应该怎么链表查询呢?当然,文章的作者信息在那张表事先是不知道的,主要根据每篇文章的uid记录获取。

  1. 第二种

  2. https://segmentfault.com/q/10...

É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!