相関モデルは、ネイティブ・トランザクショナル・データまたはネストしたデータで構築できます。次の例に、マーケット・バスケット分析用のネストした列を定義する方法を示します。
次のSQL文は、SALES_TRANS_CUST_NESTED
というビューで、このデータをDM_NESTED_NUMERICALS
型の列に変換します。このビューは、マイニング用のケース表として使用できます。
CREATE VIEW sales_trans_cust_nested AS SELECT trans_id, CAST(COLLECT(DM_NESTED_NUMERICAL
( prod_name, 1)) ASDM_NESTED_NUMERICALS
) custprods FROM sales_trans_cust GROUP BY trans_id;
この問合せは、変換されたデータから2つの行を戻します。
SELECT * FROM sales_trans_cust_nested WHERE trans_id < 101000 AND trans_id > 100997; TRANS_ID CUSTPRODS(ATTRIBUTE_NAME, VALUE) ------- ------------------------------------------------ 100998 DM_NESTED_NUMERICALS (DM_NESTED_NUMERICAL('O/S Documentation Set - English', 1) 100999 DM_NESTED_NUMERICALS (DM_NESTED_NUMERICAL('CD-RW, High Speed Pack of 5', 1), DM_NESTED_NUMERICAL('External 8X CD-ROM', 1), DM_NESTED_NUMERICAL('SIMM- 16MB PCMCIAII card', 1))
例3-8 ネストした列への変換
ビューSALES_TRANS_CUST
は、各マーケット・バスケットを識別するトランザクションIDと、各バスケット内の製品のリストを表示します。
describe sales_trans_cust Name Null? Type ----------------------------------------------------- -------- ---------------- TRANS_ID NOT NULL NUMBER PROD_NAME NOT NULL VARCHAR2(50) QUANTITY NUMBER
関連項目: