これが私のphp/MySQLタスクです:
主キーであるフィールドと、投稿に関するその他の情報フィールド ( 、など)POSTSを含むテーブルがあります。主キーであるフィールドと のフィールドに対応するフィールドを含むテーブルもあります。特定のを指定すると、userId が「好き」なテーブルからすべての行を取得する必要があります。numauthortitleLIKEuserIdPOSTnumpostsuserIDPOSTS
表 1 - ポスト
-番号 -著者-
タイトル
表 2 - いいね
-userId
-postId
これはすべてphpであるため、最初のアイデアは、指定されたものと一致するLIKESテーブルからすべての行を取得し、それらの行を配列に格納することでした。userId次に、配列を反復処理し、行ごとに検索してPOSTStableの行を取得しますwhere postId=POSTS.num。ただし、特に配列を介した各反復が個別の mysql クエリになるため、これはかなり遅くなるようです。
もっと速い方法があると思います。一時テーブルを使用するか、テーブルを結合するためのより良い方法はありますか? 両方のテーブルに多くの行が含まれていると想定する必要があります。私は mysql の初心者です。より良い解決策があれば、その理由を説明してください。助けてくれてありがとう!