MySQL への配列の保存: 総合ガイド
MySQL などのリレーショナル データベースを使用する場合、配列を効率的に保存するのが難しい場合があります。この記事では、単一の MySQL フィールドでの配列の保存と取得に関する詳細なガイドを提供します。
配列ストレージの長所と短所
固有の「良い」方法はありません。配列を 1 つのフィールドに格納します。 Serialize() や unserialize() などの関数を使用してデータをシリアル化およびシリアル化解除することが解決策のように思えるかもしれませんが、このアプローチではクエリ可能性とデータの整合性が制限されます。
代替リレーショナル アプローチ
推奨されるアプローチには、スキーマを再構築して配列ストレージの必要性を排除することが含まれます。たとえば、次の配列について考えてみましょう:
<code class="php">$a = [ 1 => [ 'a' => 1, 'b' => 2, 'c' => 3 ], 2 => [ 'a' => 1, 'b' => 2, 'c' => 3 ], ];</code>
このデータを MySQL に保存するには、次のようなテーブルを作成します:
<code class="sql">CREATE TABLE test ( id INT UNSIGNED NOT NULL PRIMARY KEY, a INT UNSIGNED NOT NULL, b INT UNSIGNED NOT NULL, c INT UNSIGNED NOT NULL );</code>
このアプローチにより、データを効果的にクエリできます。 。以下に MySQL クエリの例を示します:
<code class="sql">SELECT * FROM test; INSERT INTO test (id, a, b, c) VALUES (1, 1, 2, 3);</code>
追加の代替案
配列を 1 つのフィールドに保存する必要がある場合は、JSON 関数の使用を検討することもできます:
以上がMySQL データベースに配列を効率的に保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。