友達の投稿を表示する最も良い方法は何ですか?php mysql友達の投稿を表示
各ユーザーは最大5000人の友達を持つことができます。
手順:
1)mysqlは5000の友人のユーザー名を取得します。
2)5000人の友人のユーザー名をPHP配列に保存します。
3)SELECT posts, datatime FROM tbl_posts WHERE username IN ($array) ORDER BY id DESC LIMIT 10;
質問:のは、PHPの配列で第五千アイテムですzac1987としましょう。最新の10個の投稿がzac1987によって投稿されている場合、投稿が投稿されたかどうかを判断するために、mysqlは5000個のアイテムをループする時間を無駄にする必要がありますか?したがって、最新の10個の記事を表示したい場合、mysqlは5000人の友人x 10個の記事= 50,000個のアイテムをループする必要がありますか? 5秒ごとに新しい投稿があるかどうかを確認する必要があるため、5秒ごとに50,000アイテムをループする必要があります。非常に多くのループ/フィルタリング項目の処理を防ぐ方法はありますか?
WOW、joinメソッドを使用して5000人の友達をアレイでスキップすることはできません。大変ありがとうございます。もし私が 'post'を結合に先導させたいのであれば?最新の10個の記事を表示したいが、10個の最新の友達が投稿した投稿を表示したくない。 – zac1987
@ zac1987:あなたは 'STRAIGHT_JOIN'を使うことができますが、' MySQL'が決めることをお勧めします。あなたは 'p.post_date'によってあなたが注文したので、クエリは' 10'最新の投稿を表示します。どちらの表が先行しているか駆動されていても、問合せのセマンティクスには影響しません。 – Quassnoi
ありがとう、ありがとう。 – zac1987