マップ・フィールド
1つまたは複数の値をマップ・カラムに書き込みます。
データを格納するためmapがテーブルに指定されている場合は、INSERT
またはUPDATE
を使用してデータを入力します。
手順
-
INSERT
またはUPDATE
コマンドを使用し、マップ・コレクション内の整数とテキスト値をコロンで区切り、中かっこで囲んで、mapのデータを設定するか、置き換えます。INSERT INTO cycling.cyclist_teams (id, lastname, firstname, teams) VALUES ( 5b6962dd-3f90-4c93-8f61-eabfa4a803e2, 'VOS', 'Marianne', {2015 : 'Rabobank-Liv Woman Cycling Team', 2014 : 'Rabobank-Liv Woman Cycling Team', 2013 : 'Rabobank-Liv Giant', 2012 : 'Rabobank Women Team', 2011 : 'Nederland bloeit' });
注: この方法でINSERT
を使用すると、マップ全体が置き換わります。 -
UPDATE
コマンドを使用して、値をmapに挿入します。キーと値のペアを中かっこで囲み、加算(+)演算子を使用して、mapに要素を追加書き込みします。UPDATE cycling.cyclist_teams SET teams = teams + {2009 : 'DSB Bank - Nederland bloeit'} WHERE id = 5b6962dd-3f90-4c93-8f61-eabfa4a803e2;
-
特定の要素を設定します。これを行うには、
UPDATE
コマンドを使用し、要素の特定のキーである整数を角かっこで囲み、等価演算子を使用して、割り当てられている値をキーにマップします。UPDATE cycling.cyclist_teams SET teams[2006] = 'Team DSB - Ballast Nedam' WHERE id = 5b6962dd-3f90-4c93-8f61-eabfa4a803e2;
-
DELETE
コマンドを使用し、要素の特定のキーを角かっこで囲んで、マップから要素を削除します。DELETE teams[2009] FROM cycling.cyclist_teams WHERE id=e7cd5752-bc0d-4157-a80f-7523add8dbcd;
-
あるいは、UPDATEコマンド、減算演算子(-)、中かっこで囲んだマップ・キー値を使用して、特定の値を持つすべての要素を削除します。
UPDATE cycling.cyclist_teams SET teams = teams - {'2013','2014'} WHERE id=e7cd5752-bc0d-4157-a80f-7523add8dbcd;