PostgreSQL では、配列の添え字を使用して配列内の要素にアクセスできます。PostgreSQL の配列は 1 から始まります。つまり、配列の最初の要素は 0 ではなくインデックス 1 になります。

構文 – PostgreSQL の配列要素にアクセスする:

array[index]

array: 要素にアクセスする配列。

index: 取得する要素の 1 から始まる位置。

例 – PostgreSQL の配列要素にアクセスする:

配列の最初の要素にアクセスする:

配列 {‘Bread’, ‘Butter’, ‘Jam’} の最初の要素にアクセスするには、配列のインデックスを使用します。最初のインデックスは最初の位置を示します。

SELECT (ARRAY['Bread', 'Butter', 'Jam'])[1] AS first_element;

出力:

PostgreSQL の配列要素にアクセスする 1

配列の 3 番目の要素にアクセスする:

配列 {‘Bread’, ‘Butter’, ‘Jam’} の 3 番目の要素にアクセスするには、インデックスを使用します。インデックスに 3 を指定すると、3 番目の位置が取得またはアクセスされます。

SELECT (ARRAY['Bread', 'Butter', 'Jam'])[3] AS third_element;

出力:

PostgreSQL の配列要素にアクセスする 2

PostgreSQL の配列列の要素にアクセスする:

PostgreSQL テーブルの配列列の N 番目の要素を抽出できます。

テーブル名を「orders_arr_table」としましょう         

PostgreSQL の配列要素にアクセスする 3

配列列では、配列インデックスを使用してその要素にアクセスできます。PostgreSQL 配列は 1 から始まります。つまり、最初の要素はインデックス 1 にあります。

PostgreSQL の配列列の最初の要素にアクセスする:

例: 配列の最初の要素にアクセスするには、列名に続いてインデックスを指定します。例では、order_items[1]は最初の項目を返します。

SELECT * , order_items[1] AS first_item
FROM orders_arr_table;

出力:

PostgreSQL の配列要素にアクセスする 4

PostgreSQL の配列列の 2 番目の要素にアクセスする

例: 配列の2番目の要素にアクセスするには、列名に続いてインデックスを指定します。例では、order_items[2]は2番目の項目を返します。

SELECT * , order_items[2] AS Second_item
FROM orders_arr_table;

出力:

PostgreSQL の配列要素にアクセスする 5

PostgreSQL の配列列の最後の要素にアクセスする

例:配列の最後の要素にアクセスするには、array_length()関数を使用して配列の長さを取得し、それをインデックスの値として渡します。

SELECT *, order_items[array_length(order_items, 1)] AS last_item
FROM orders_arr_table;

出力:

PostgreSQL の配列要素にアクセスする 6

PostgreSQL の配列列の複数の要素にアクセスする

例:配列の複数の要素にアクセスするには、特定のインデックス値を使用してn番目の配列要素を抽出し、最後の要素を抽出したい場合はarray_length()関数を使用して配列の長さを見つけ、それをインデックスの値として渡します。

SELECT *, order_items[1] AS first_item, order_items[2] AS second_item, order_items[array_length(order_items, 1)] AS last_item FROM orders_arr_table;

出力:

PostgreSQL の配列要素にアクセスする 7