Rumah > pembangunan bahagian belakang > tutorial php > mysql - 关于php查询数据库的问题

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

WBOY
Lepaskan: 2016-06-06 20:29:24
asal
964 orang telah melayarinya

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

比如:用户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>
Salin selepas log masuk
Salin selepas log masuk

以上是表的结构。

请问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>
Salin selepas log masuk
Salin selepas log masuk

以上是表的结构。

请问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>
Salin selepas log masuk

是说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>
Salin selepas log masuk

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

确定不用redis???

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

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan