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

シリアル化されたデータからのPHPの並べ替え

    行の1つの列に複数の値を含めることはできません。ユーザーのIDを使用して、ロールを独自のデータベーステーブルに保存すると、必要に応じてロールを持つユーザーをMySQLに要求するだけで済みます。

    CREATE TABLE user_roles (user_id INT, role_name VARCHAR(100));
    INSERT INTO user_roles (1, '_wfa');
    INSERT INTO user_roles (1, '_CS');
    INSERT INTO user_roles (1, '_CM');
    
    SELECT users.id FROM users INNER JOIN user_roles ON users.id = user_roles.user_id WHERE user_roles.role_name = '_wfa';
    


    1. 文字列を正しい方法で分割する–または次善の方法

    2. JSONをデータベースに保存するか、キーごとに新しい列を作成するか

    3. SQLテーブル結合のON句とWHERE句の違い

    4. MysqlのWHERE句のファイル名は何も返しません