私は新しいスクリプトに取り組んでいます。9gagに似たもので、投稿や好き嫌いなどがあります。
投稿、ユーザー、like_status の 3 つのテーブルがあります。
例えば:
投稿テーブルの構造:
postid, postdata , userid, ...
users テーブル構造:
userid, username , ....
like_status
postid,userid,liked, disliked
以前はMySQLクエリを使用していました
SELECT A.*, B.username FROM posts A, users B WHERE A.userid=B.userid
次に、セッションのユーザー ID を変数に割り当て、$SID
この MySQL クエリを使用して、同様のステータスを取得します。
SELECT * FROM like_status WHERE userid=$SID
すべて正常に動作していますが、サーバーの負荷が少し心配です。
結合クエリを実行するには、サーバーの負荷とメモリにどちらが適していますか:
SELECT A.*, B.username, C.liked, C.disliked
FROM posts A
JOIN users B ON (A.userid = B.userid)
JOIN like_status C ON (C.userid = $SID)
そのクエリを使用して、たとえば 10 件の投稿などの投稿数を取得するとどうなりますか?
SELECT A.*, B.username, C.liked, C.disliked
FROM posts A
JOIN users B ON (A.userid = B.userid)
JOIN like_status C ON (C.userid = $SID)
ORDER BY A.postid limit 10
.. パフォーマンスの問題が発生しますか?
それでおしまい。よろしくお願いします