我使用以下答案提取了一个用户名列表:
how to optimize mysql query if i have too many OR operators in my query?
现在我还有一个问题。我有一个朋友表,它只包含两列,请求者和好友都是复合主键。
现在假设我有一个给定用户的facebook好友数组,使用上述问题。
我如何在我的网络应用程序中自动让他们成为朋友呢?
这意味着如果我有5个真正的朋友给一个叫“usera”的用户。我需要执行10个insert语句。
我知道insert select很有效。但不幸的是,这些朋友的用户名列表是通过使用IN子句的PHP值数组获得的,正如我在上述问题中的SO成员所建议的那样。
那我该怎么办?
a) 循环遍历名称并为每个步骤执行2个insert语句?
b) 使用插入选择?但具体怎么做呢?
1个名为users的表,其中username是主键,fb\u uid可以为空。
一个表名为friends,其中一个列名为requestor,另一个列名为buddy。两列构成一个复合键。
当您在朋友表中有以下数据时,我的web应用中的两个人(usera,userb)之间就会建立友谊:(usera,userb)和(userb,usera)。
非常感谢。