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

(Postgre)SQLの1対多の関係

    ここで実際に行っているのは、多対多の関係です。考えてみてください。各タグは複数の投稿に含めることができ、各投稿には複数のタグを付けることができます。

    このための正しいリレーショナルアーキテクチャは、次のように中央に別のテーブルを追加することです。

    CREATE TABLE post_tags (
      id INTEGER REFERENCES posts,
      tag VARCHAR REFERENCES tags
    );
    

    次に、tagsを削除します 投稿テーブルの列。

    さまざまな方向でpost_tagsと結合することで、投稿のタグのセットまたは特定のタグを持つ投稿のセットを取得できるため、これによりすべての問題が解決されます。通常のLIKEクエリを使用して、何かで始まるタグのリストを取得することもできます。これは、1つのフィールドに連結された文字列の束がある場合はより困難になります。



    1. MySQL接続タイムアウトの問題-HibernateとORMを使用したTomcat上のGrailsアプリケーション

    2. ANDおよびORクエリとManyToManyフィールドを組み合わせたDjango

    3. Cakephpはデータベースから情報を取得します

    4. MySQLからテキストファイルに複数の列をエクスポートするにはどうすればよいですか?