для каждого конкретного пользователя? для юзера 1 одни списки для юзера 2 (у него другой список друзей) другие и тд
и это выборка первых 30 записей, после почти сразу +30 инфинитскроллом и так далее
Added 1 minute later:
пробую так
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
$db->exec("
CREATE TEMPORARY TABLE temp_friends (
friend_id INT PRIMARY KEY
) ENGINE=MEMORY;
");
if (!empty($friends_ids)) {
$placeholders = implode( ',' , array_fill( 0 , count($friends_ids), '?' ));
$stmt = $db->prepare( "INSERT INTO temp_friends (friend_id) VALUES ($placeholders)" );
$stmt->execute($friends_ids);
}
$totalitems = $db->query("SELECT COUNT(*)
FROM $db_stories AS f
LEFT JOIN $db_users AS u ON u.user_id=f.item_userid
LEFT JOIN temp_friends tf ON tf.friend_id = f.item_userid
$join_condition
" . $where . "
$where_condition
$where_friends
")->fetchColumn();
$db->exec( "DROP TEMPORARY TABLE IF EXISTS temp_friends;" );
|