Home > Backend Development > PHP Tutorial > mysql - 关于php查询数据库的问题

mysql - 关于php查询数据库的问题

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-06 20:29:24
Original
993 people have browsed it

我正在做一个学校内部交流系统,现在遇到一个问题

比如:用户A的ID是5,用户B的ID是6,如何实现用户A关注的人同样也关注B,怎么统计出来人数呢?

已知的表:Follow_table(关注表)

<code>follow_id(自增ID)  |  user_id(关注者ID)  |  follow_user_id(被关注者ID)  |  follow_time(关注时间)  |
--------------------------------------------------------------------------------------------------
         1         |         5          |             1                |  2015-08-22 10:29:11 |
         </code>
Copy after login
Copy after login

以上是表的结构。

请问mysql查询语句怎么写呢?感谢大家!!

回复内容:

我正在做一个学校内部交流系统,现在遇到一个问题

比如:用户A的ID是5,用户B的ID是6,如何实现用户A关注的人同样也关注B,怎么统计出来人数呢?

已知的表:Follow_table(关注表)

<code>follow_id(自增ID)  |  user_id(关注者ID)  |  follow_user_id(被关注者ID)  |  follow_time(关注时间)  |
--------------------------------------------------------------------------------------------------
         1         |         5          |             1                |  2015-08-22 10:29:11 |
         </code>
Copy after login
Copy after login

以上是表的结构。

请问mysql查询语句怎么写呢?感谢大家!!

查A关注的人里有多少关注B的,是这意思吧

<code>select count (1) from Follow_table where follow_user_id=6 and user_id in
 (select follow_user_id from Follow_table where user_id=5)</code>
Copy after login

是说A、B同时关注的人,建议分别取A关注的人和B关注的人然后取数组交集这样会降低数据库负载,因为数据库CPU资源更宝贵。
一条sql的话试试这样:

<code>select a.follow_user_id from Follow_table a, Follow_table b where a.user_id=5 and b.user_id=6 and a.follow_user_id=b.follow_user_id;</code>
Copy after login

先查询到用户a关注的人,然后再判断这些人有没有关注b

确定不用redis???

假设a->b,a->[b,c,d,e],会不会有c->b或d->b呢,设定->左侧为left(关注人),右侧为right(被关注人),先找到a所关注的对象[right],再以右侧b找到所有左侧关注人[left],在从[left]中找[right],SQL语句就不写了。。。

Related labels:
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Issues
php data acquisition?
From 1970-01-01 08:00:00
0
0
0
PHP extension intl
From 1970-01-01 08:00:00
0
0
0
How to learn php well
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template