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

ユーザーIDのリストを保存するための最良の方法

    非効率的です。ここでリレーショナル用語として使用しているのは、ユーザーとゲームの間の多対多の関係です。ユーザーは多くのゲームに投票できます。ゲームは多くのユーザーが投票できます。これに対する解決策は、結合テーブルを用意することです:

    USERS (uid, name, ...)
    GAMES (gid, name, ...)
    VOTES (id, uid, gid, ...)
    

    ここで、uidとgidは、それぞれのテーブルに戻る外部キーです。

    誰かが投票した場合は、VOTESにレコードを挿入します。

    ゲームの投票リストを取得するには:

    $get = mysql_query("SELECT * FROM votes WHERE gid = $game_id");
    ...
    

    ユーザーの投票のリストを取得するには:

    $get = mysql_query("SELECT * FROM votes WHERE uid = $user_id");
    ...
    

    など。

    配列を結合して単一の列に格納しないでください。あなたはそれを避けるのが正しいです。



    1. Mysqlを使用したC#でのプリペアドステートメントの使用

    2. postgresqlコンソールでは正常に見えるのにクエリがcsvファイルに保存されない理由

    3. mysqlコマンドラインの表示設定を調整するにはどうすればよいですか?

    4. Mysqlは2つのテーブルに挿入します