我需要找到最快或最好的方式来获取当前用户朋友的所有互动(存储在我的数据库中),以便将其显示为新闻Feed。
我开始使用fql调用:
select uid, name, is_app_user from user where uid in (select uid2 from friend where uid1=me()) and is_app_user=1
然后查询我的数据库,搜索所有具有其中一些ID的行。问题是它很慢。
我的数据库电话:
foreach($friends['data'] as $friend) {
$lista = $lista.", ".$friend['id'];
}
$sql = "SELECT resp FROM respuestas WHERE de OR para IN (".$lista.") LIMIT 5";`
respuestas表结构:
+---+------+------------+-------+----------------+--------+
| 1 | id | int(11) | INDEX | AUTO_INCREMENT | UNIQUE |
+---+------+------------+-------+----------------+--------+
| 2 | de | bigint(20) | INDEX | | |
+---+------+------------+-------+----------------+--------+
| 3 | para | bigint(20) | INDEX | | |
+---+------+------------+-------+----------------+--------+
| 4 | resp | text | | | |
+---+------+------------+-------+----------------+--------+
查询在“de”或“para”中搜索以用户的任何朋友为内容的所有行。
有更好的解决方案吗?