sql >> データベース >  >> RDS >> Mysql

カスタムphpフォーラム-新規/未読の投稿を表示

    大規模なフォーラムソフトウェアの多くは、追跡テーブルを使用して、誰が何を読んだかを把握しています。これは、次のようなものです(大幅に簡略化されています)。

    CREATE TABLE topic_tracking (
        user_id INT NOT NULL,
        topic_id INT NOT NULL,
        last_visit DATETIME NOT NULL,
        PRIMARY KEY (user_id, topic_id)
    )
    

    次に、このテーブルの結合を使用して、表示している投稿が読み取られているかどうかを確認します。スレッドをページングするため、追加のクエリは比較的少なくなります(1ページに表示する投稿の数によって異なります)。

    ユーザーがスレッドにアクセスしたら、この追跡テーブルをアクセスのタイムスタンプで更新します。次に、スレッドリンクを表示するときに、このテーブルをチェックして、last_visitがスレッドの最後の投稿よりも早いかどうかを確認します。これにより、「新しい」スレッドだけでなく、「更新された」スレッドも表示できます。



    1. ユーザーrootでlocalhost:3306でMySQLに接続できませんでした

    2. MySQL結合を簡単な言語で説明してください

    3. SQLiteの日付から日数を引く

    4. MySQLで値が整数であるかどうかを確認するにはどうすればよいですか?