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

データベースmysqlに同義語を保存および取得するための最良の方法

    異なるエントリを格納するために(1つの)文字列を使用しないでください。

    言い換えると、単語テーブル(word_ID、word)と同義語テーブル(word_ID、synonym_ID)を作成し、単語を単語テーブルに追加し、同義語ごとに1つのエントリを同義語テーブルに追加します。

    更新 (3番目の同義語を追加)

    単語テーブルにはすべての単語(ALL)が含まれている必要があり、同義語テーブルには同義語へのポインタのみが含まれます(単一の単語ではありません!)..

    同義語であるA、B、Cの3つの単語がある場合、DBは次のようになります

    WORD_TABLE            SYNONYM_TABLE
    ID | WORD             W_ID | S_ID
    ---+-----             -----+-------
    1  | A                  1  |  2
    2  | B                  2  |  1
    3  | C                  1  |  3
                            3  |  1
                            2  |  3
                            3  |  2  
    

    SYNONYM_TABLEの多くのエントリを恐れないでください。これらのエントリはコンピュータによって管理され、単語間の既存の関係を反映するために必要です。

    2番目のアプローチ

    また、単語用の個別のフィールドと同義語(またはID)のリスト(word_id、word、synonym_list)を持つ1つのテーブルを使用したくなるかもしれません(そうすべきではないと思います!)。これは、リレーショナルDBの動作とは逆であることに注意してください(1つのフィールド、1つのファクト)。



    1. MariaDBでのNOW()のしくみ

    2. プロパティマネージャーがデータベースを使用して効率を向上させる方法

    3. PHPを使用してMySQLデータベースから画像を保存および取得するにはどうすればよいですか?

    4. Enterprise Manager AppforGrafanaを使用してOEMをGrafanaに接続します