ホームページ >データベース >mysql チュートリアル >ネイティブ配列サポートなしで MySQL に配列のようなデータを効率的に保存および取得するにはどうすればよいですか?
MySQL への配列の保存
MySQL のようなリレーショナル データベース管理システムでは、配列はネイティブにサポートされていません。したがって、配列を MySQL テーブルに保存することには課題があります。
問題ステートメント:
MySQL の 2 つのテーブルを考えてみましょう:
テーブル人:
テーブルフルーツ:
目標は、Person テーブルの果物の列を設計して、 Fruit テーブルの Fruit_name 列の値に対応する文字列の配列を格納します。
解決策:
この問題を解決するには、リレーショナル モデリング手法を採用する必要があります。 「多対多の関係」と呼ばれます。この手法には、「結合テーブル」または「関連付けテーブル」と呼ばれる中間テーブルを導入して 2 つのメイン テーブルをリンクすることが含まれます。
この場合、次の列を持つ Person_Fruit テーブルを作成できます:
このテーブルは、各人物とその人物が関連付けられている果物をリンクします。
データを取得する SQL クエリ:
関連する結果を含むテーブルからデータを取得するには、次のコマンドを使用できます。クエリ:
SELECT p.*, f.* FROM Person p INNER JOIN Person_Fruit pf ON pf.person_id = p.id INNER JOIN Fruit f ON f.fruit_name = pf.fruit_name;
結論:
多対多のリレーションシップと中間テーブルを使用することで、たとえこれらはネイティブにはサポートされていません。この手法により、データの整合性を維持しながら、効率的なデータの取得とメンテナンスが可能になります。
以上がネイティブ配列サポートなしで MySQL に配列のようなデータを効率的に保存および取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。