Heim  >  Artikel  >  Backend-Entwicklung  >  MySql分表,大公司是怎么做的,怎么做到的高效,分表联表查询怎么办?

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

WBOY
WBOYOriginal
2016-09-21 14:13:091333Durchsuche

现在我有两张表

一张用户表,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...

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn