例: 複数行からの複数値を1つのインスタンスに集約する - Teradata Database - Teradata Vantage NewSQL Engine - DATASET公開機能のための例。

Teradata Vantage™ DATASETデータ型

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

DATASET_PUBLISHを使用して、複数の行から複数の値を、Teradata内の各AMPの1つのインスタンスにローカルに集約します。このAMPローカル集約はテーブル演算子の標準のオペレーティング プロシージャです。

すべての入力値の集約を1回で実施するために、DATASET_PUBLISHを文の中で2回呼び出すことができます。DATASET_PUBLISHがPARTITION BY句なしで1回呼び出された場合は、各AMPは集約された出力を1行で作成します。この例では、いくつかの入力データがソース テーブルに追加されます。

INSERT INTO employeeTable(4,'Jose Hernandez','Engineering'); 
INSERT INTO employeeTable(5,'Kyle Newman','Engineering');
INSERT INTO employeeTable(6,'Pamela Giles','Sales');

SELECT data.toJSON() FROM DATASET_PUBLISH
(
	ON (SELECT * FROM employeeTable)	 
) AS avroFiles;

data.toJSON()
[{
	"empID": 5,
	"empName": "Kyle Newman",
	"empDept": "Engineering"
},
{
	"empID": 3,
	"empName": "Steven Mazzo",
	"empDept": "Engineering"
},
{
	"empID": 1,
	"empName": "George Smith",
	"empDept": "Accounting"
},
{
	"empID": 2,
	"empName": "Pauline Kramer",
	"empDept": "HR"
}]
–-------------------------------------
[{
	"empID": 4,
	"empName": "Jose Hernandez",
	"empDept": "Engineering"
}]
–-------------------------------------
[{
	"empID": 6,
	"empName": "Pamela Giles",
	"empDept": "Sales"
}]