RCV2SIMPLE_NUM

この手続きは、行/列/値の表を「単純な」行列表に変換する。 入力は表やマトリックスの形にすることができる。

使用法

RCV2SIMPLE_NUM ストアドプロシージャの構文は以下の通りです:
RCV2SIMPLE_NUM(paramString,intable,colprefix,inmatrix,outtable)
パラメーター
paramString
入力パラメータの指定。
タイプテキスト
intable
このパラメータは、入力が表形式の場合に使用される。
タイプNVARCHAR(ANY)
コルプレフィックス
新しいテーブルのカラム名のプレフィックス。
タイプNVARCHAR(ANY)
インマトリクス
このパラメータは、入力が行列形式の場合に使用する。
タイプNVARCHAR(ANY)
outtable
出力データテーブルの名前。
タイプNVARCHAR(ANY)
戻り
INTEGER。出力表の行数。

詳細

単純な "行列テーブルとは、各テーブル行が行インデックス値と、対応する行列行の行列要素値を含むデータベーステーブルのことである。 この手続きは、0/1ダミー変数をメタデータ・テーブルにリストされた辞書テーブルに記録された元の値に戻す、名義属性値の合成をサポートする。 行列の列数は1600以下でなければならない。 入力は表やマトリックスの形にすることができる。

CREATE TABLE SIMPLE1 (ID INTEGER, V1 DOUBLE, V2 DOUBLE,
 V3 DOUBLE);
INSERT INTO SIMPLE1 VALUES(1,100001, 100002, 100003); 
INSERT INTO SIMPLE1 VALUES(4, 200001, 200002, 200003); 
INSERT INTO SIMPLE1 VALUES(9, 300001, 300002, 300003); 
CALL NZM..SIMPLE2RCV_ADV('outtable=RCV1, outmeta=RCV_META1,
 intable=SIMPLE1, incolumnlist=., id=ID');
CALL NZM..RCV2SIMPLE_NUM('intable=RCV1,outtable=SIMPLE2');
SELECT * FROM SIMPLE2;
SELECT * FROM RCV1;
SELECT * FROM RCV_META1;
DROP TABLE SIMPLE1;
DROP TABLE SIMPLE2;
DROP TABLE RCV1;
DROP TABLE RCV_META1;

 SIMPLE2RCV_ADV
----------------
 3
(1 row)

 RCV2SIMPLE_NUM
----------------
 3
(1 row)

 ID |  COL1  |  COL2  |  COL3
----+--------+--------+--------
  2 | 200001 | 200002 | 200003
  3 | 300001 | 300002 | 300003
  1 | 100001 | 100002 | 100003
(3 rows)

 ROW | COL | VALUE
-----+-----+--------
    1|    1| 100001
    1|    2| 100002
    1|    3| 100003
    2|    1| 200001
    2|    2| 200002
    2|    3| 200003
    3|    1| 300001
    3|    2| 300002
    3|    3| 300003
(9 rows)

 COLID | COLNAME | COLDICT | OUTCOLBEG | OUTCOLEND
-------+---------+---------+-----------+-----------
     2| V2       |         |          2|         2
     1| V1       |         |          1|         1
     3| V3       |         |          3|         3
(3 rows)

CREATE TABLE SIMPLE1 (ID INTEGER, V1 DOUBLE, V2 DOUBLE,
 V3 DOUBLE);
INSERT INTO SIMPLE1 VALUES(1, 100001, 100002, 100003);
INSERT INTO SIMPLE1 VALUES(4, 200001, 200002, 200003); 
INSERT INTO SIMPLE1 VALUES(9, 300001, 300002, 300003); 
CALL NZM..SIMPLE2RCV_ADV('outtable=RCV1, outmeta=RCV_META1,
 intable=SIMPLE1, incolumnlist=., id=ID');
CALL NZM..RCV2SIMPLE_NUM('intable=RCV1, outtable=SIMPLE3,
 colprefix=column');
SELECT * FROM SIMPLE3;
SELECT * FROM RCV1;
SELECT * FROM RCV_META1;
DROPTABLE SIMPLE1;
DROP TABLE SIMPLE3;
DROP TABLE RCV1;
DROP TABLE RCV_META1;

 SIMPLE2RCV_ADV
----------------
 3
(1 row)

 RCV2SIMPLE_NUM
----------------
 3
(1 row)

 ID | COLUMN1 | COLUMN2 | COLUMN3
----+---------+---------+---------
  2 |  200001 |  200002 |  200003
  3 |  300001 |  300002 |  300003
  1 |  100001 |  100002 |  100003
(3 rows)

 ROW | COL | VALUE
-----+-----+--------
    1|   1 | 100001
    1|   2 | 100002
    1|   3 | 100003
    2|   1 | 200001
    2|   2 | 200002
    2|   3 | 200003
    3|   1 | 300001
    3|   2 | 300002
    3|   3 | 300003
(9 rows)

 COLID | COLNAME | COLDICT | OUTCOLBEG | OUTCOLEND
-------+---------+---------+-----------+-----------
     1 |       V1|         |         1 |         1
     2 |       V2|         |         2 |         2
     3 |       V3|         |         3 |         3
(3 rows)