ホームページ  >  に質問  >  本文

mongodb 需不需要建多个表?

现在需求是每个用户有一些项目projects,项目有分类tags

按照 mysql 的方法应该是建3张表,一张用户表,一张项目表,一张分类表,然后外键什么的。

如果是 mongo ,是不是一张表就够了?

{
    username: '',
    u_id: '132342131',
    projects: [
        {
            tags: 'editor',
            p_id: ['12312334','123345213','2352321313']
        },
        {
            tags: 'blogs',
            p_id: ['12312334','123345213','2352321313']
        }
    ]
}

初学 mongo ,不吝赐教。

漂亮男人漂亮男人2727日前667

全員に返信(3)返信します

  • PHP中文网

    PHP中文网2017-05-02 09:22:19

    あなたの場合は 1 つのテーブルで十分だと思います mongodb 結局のところ、これはドキュメント データベースであり、保存されるデータは拡張性が高いです。もちろんご希望であれば分割も可能です。あくまでご参考までに

    返事
    0
  • 仅有的幸福

    仅有的幸福2017-05-02 09:22:19

    テーブルでも良いですが、「p_id」で指定した値を更新する場合の方が恥ずかしい

    返事
    0
  • 为情所困

    为情所困2017-05-02 09:22:19

    簡単な答えもあればいいのに。問題は、「データをテーブルに入れる必要があるか」ということですが、これが MongoDB のデータ モデル設計の中で最も難しい部分です。 MongoDB のデータベース設計は SQL とは異なり、第 3 正規形を満たすかどうかが基準となります。 MongoDB の場合、それは一連の「if... then should... but if... then should...」です
    これは大きなトピックであり、MongoDB を使用する際に学ぶべき最も重要なことでもあります。研究のための情報を提供してください:
    http://blog.mongodb.org/post/...
    http://blog.mongodb.org/post/...
    http://blog.mongodb.org/post /…
    https://docs.mongodb.com/manu…

    考慮すべき最も基本的な質問は、このデータ モデルをどのように使用する予定であるかです。モデルがほとんどの使用シナリオで良好なパフォーマンスを発揮する場合、そのモデルは適切な設計であると言えます。

    返事
    0
  • キャンセル返事