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

外部キーとして複数の値を含むMySQL列を持つことは可能ですか?

    2つのテーブルをリンクするための「ミドルマン」テーブルを作成したくない場合は、フィールドにコンマ区切りの値を指定できます。find_in_setを使用するだけです。 クエリを実行するときのmysql関数

    find_in_setの使用

    SELECT
       log.user_id, log.activity_id, log.tags,
       GROUP_CONCAT(tags.name) as taggedNames //This assumes there is a field called `name` in tags table
    FROM
       log
    LEFT JOIN tags
    ON
       FIND_IN_SET(tags.tag_id,log.tags)
    GROUP BY
       log.activity_id
    

    GROUP_CONCATはフィールドをグループ化し、デリミネーターで区切ります。デフォルトは,です。




    1. android/phpレコードがmysqlに挿入されていません

    2. PDO-'while'ループでAssocをフェッチします

    3. Cの紹介

    4. 3つの異なる日付間隔のデータで1つの列を数回表示する