gpt4 book ai didi

php - 最佳 MySQL 查询性能

转载 作者:行者123 更新时间:2023-11-29 14:29:05 24 4
gpt4 key购买 nike

我有这个 mysql 数据库,我需要在其中执行更大的 MySQL 查询。用户 A 在名为 users 的表中拥有一行。在名为“trackers”的字段的值中,有一个逗号分隔的值,其中包含用户 A 收到通知的 friend 的 ID。

MySQL --> 用户(表)--> 跟踪器(字段)--> 2,3,4(值)。

MySQL 服务器必须在一次查询中用逗号分隔值。我认为,如果服务器只执行单个查询,而不是使用 PHP foreach 对每个值执行一个查询,那么对服务器会更友好。

我需要这样的查询:SELECT * FROM users WHERE in (SELECT trackers FROM users WHERE id = $me SEPERATED BY ,)

最佳答案

我对此的感觉是表格设计不适合您想要实现的目标。我个人的方法是将跟踪器分成一个单独的表。由于一个用户基本上是在跟踪另一个用户,因此该表将与用户表链接两次。

请参阅下面我建议的表格设计。

Suggested Table Design

因此,此设计将允许您通过如下查询选择用户正在跟踪的所有用户:

SELECT users.* 
FROM trackers
INNER JOIN users ON id = tracker
WHERE user.id = {your user id}

关于php - 最佳 MySQL 查询性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10354379/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com