次のアクションを実行する MySQL クエリの作成に問題があります。
各スレッドのスレッド ID に等しいスレッド ID を使用して、最新の投稿 (最大のタイムスタンプ) のタイムスタンプ (降順) で順序付けされたスレッド テーブルからすべてのスレッド ID を選択します。したがって、基本的にはスレッドを調べて、MySQL にデータベースをチェックさせてスレッド 0 としましょう。次に、threadID が 0 のすべての投稿をチェックし、スレッド 0 内の投稿の最大のタイムスタンプに基づいてスレッド 0 を並べ替えます。次に、スレッド 1、スレッド 2 などに対してこれを繰り返し、それに応じて並べ替えます。
これは可能ですか?これは、フォーラムの「バンプ システム」効果を作成することです。このシステムでは、最近アクティブなスレッドが、そのスレッドが消滅するまで継続的にリストの一番上に移動し、その後、そのスレッドが一番下に落ちます。以前は、lastActivity タイムスタンプをスレッド テーブルに保存し、新しい投稿がスレッドに送信されたときにそれを更新する別の実装を使用していましたが、このクエリを使用すると作業がはるかに効率的になります。
どうもありがとう!ここに関連する 2 つのテーブルがあります: スレッドと投稿です。投稿には、所属するスレッドの ID を格納する threadID フィールドがあり、タイムスタンプ フィールドもあります。Threads には、投稿のスレッド ID に対応するフィールド threadID があります。