例: ARRAY_UPDATEを使用した、1-D ARRAYデータ型とテーブルへの問合わせ - Teradata Database - Teradata Vantage NewSQL Engine - ARRAY_UPDATEの例: ARRAY_UPDATEを使用した、1-D ARRAYデータ型とテーブルへの問合わせ。

Teradata Vantage™ データ タイプおよびリテラル

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/xnq1529717274657.ditamap
dita:ditavalPath
ja-JP/xnq1529717274657.ditaval
dita:id
B035-1143
Product Category
Software
Teradata Vantage

次の1次元のARRAYデータ型およびテーブルについて考えてみましょう。

CREATE TYPE phonenumbers AS CHAR(10) ARRAY[20];
CREATE TABLE employee_info (eno INTEGER, phonelist phonenumbers);

次の問合わせは、すべての構成要素が新しい値に更新されたphonelist配列の更新後のコピーを返します。

SELECT ARRAY_UPDATE(phonelist, '9095551234')
FROM employee_info;

次の問合わせは、適用範囲の参照で指定したように、構成要素のサブセットが新しい値に更新されたphonelist配列の更新後のコピーを返します。その結果、構成要素2、3、および4は新しい値に更新されます。配列内の残りの構成要素は元の値のままです。

SELECT ARRAY_UPDATE(phonelist, '9095551234', 2, 4)
FROM employee_info;

次は、メソッドスタイルの構文を使用した同じ問合わせです。

SELECT phonelist.ARRAY_UPDATE('9095551234', 2, 4)
FROM employee_info;