Php 自动加入以获取好友列表
如何从网络表中获取好友列表好友列表 下面是包含表架构和示例数据的URL- 这个查询也很慢,并且会产生重复的结果Php 自动加入以获取好友列表,php,mysql,Php,Mysql,如何从网络表中获取好友列表好友列表 下面是包含表架构和示例数据的URL- 这个查询也很慢,并且会产生重复的结果 请帮助您的成员表没有我们对该查询有用的键(profile_type和profilenam上的索引可能会有所帮助)。类似地,网络表没有索引,在mem_id上添加一个索引会有所帮助 但是,由于我不知道您的查询试图做什么,因此无法对重复结果的问题进行评论 你需要更好地解释你的系统和你的问题。尝试包含您希望从现有数据中获得的输出。您能告诉我为什么网络表2次联接吗???@SameerK,因为您
请帮助您的成员表没有我们对该查询有用的键(profile_type和profilenam上的索引可能会有所帮助)。类似地,网络表没有索引,在mem_id上添加一个索引会有所帮助
但是,由于我不知道您的查询试图做什么,因此无法对重复结果的问题进行评论 你需要更好地解释你的系统和你的问题。尝试包含您希望从现有数据中获得的输出。您能告诉我为什么
网络
表2次联接吗???@SameerK,因为您可以看到网络表模式,其中2个条目类似于AB和BA,包括isfriend='Y'部分问题是n2的左联接,但是,然后在WHERE子句中检查n2中的列的值。然而,你能准确地解释你想要什么吗。您是否正在尝试查找mem_id=2的所有朋友(即,frd_id=2的网络中的所有mem_id以及mem_id=2的网络中的所有frd_id)?我已在所有必需列上添加了所有必要的索引键
SELECT
DISTINCT m.*
FROM members AS m
LEFT JOIN network n1
ON (n1.mem_id = m.mem_id
AND n1.isfriend = 'Y')
LEFT JOIN network n2
ON (n2.frd_id = m.mem_id
AND n2.isfriend = 'Y')
WHERE n2.mem_id = '2'
AND m.profile_type='BB' ORDER BY m.profilenam ASC