関数SparseSVMTrainerの関数マッピング定義user_SparseSVMTrainerには、入れ子になったパラメータが含まれます。
Var1(old_var1), var2(old_var2||'_'|| var3), old_var1(var3)
CREATE FUNCTION MAPPING user_SparseSVMTrainer
FOR SparseSVMTrainer SERVER coprocessor
Using
ANY IN TABLE,
inputtable IN TABLE,
ModelTable,
IDColumn,
AttributeColumn,
LabelColumn ('species') ,
Valuecolumn(var2 || '_' || var1) ,
MaxStep (var1) ,
Seed ('0'),
var1(old_var1),
var2(old_var2||'_'|| var3),
old_var1(var3),
var3(10)
;
このSELECT文は、var3とold_var2の値を指定します。
SELECT * FROM user_SparseSVMTrainer (
ON svm_iris_input_train as InputTable PARTITION BY 1
USING
ModelTable ('svm_iris_model')
LabelColumn ('species')
MaxStep (10)
Seed ('1')
var3 (2)
old_var2('sample')
IDColumn('id')
AttributeColumn('attribute')
) as dt1;
クエリーは次のように書き換えられます。var2は、old_var2とvar3の連結式に基づいてsample_2に解決されます。マッピング定義では、old_var1の代わりにvar1が使用されます。old_var1がvar3の代わりに使用され、クエリーでは2として指定されます。ValueColumnに定義された連結式はsample_2_2に解決されます。
SELECT * FROM user_SparseSVMTrainer (
ON svm_iris_input_train as InputTable PARTITION BY 1
USING
ModelTable ('svm_iris_model')
LabelColumn ('species')
Valuecolumn('sample_2_2')
MaxStep (10)
Seed ('1')
IDColumn('id')
AttributeColumn('attribute')
) as dt1;
このSELECT文は、var1とvar2の値を指定します。
SELECT * FROM user_SparseSVMTrainer (
ON svm_iris_input_train as InputTable PARTITION BY 1
USING
ModelTable ('svm_iris_model')
LabelColumn ('species')
IDColumn('id')
AttributeColumn('attribute')
Seed ('1')
var1 (2)
var2('sample')
) as dt1;
クエリーは次のように書き換えられます。関数マッピングは、ValueColumnをvar1var2の連結として定義します。MaxStepはvar1の代わりに使用されます。
SELECT * FROM user_SparseSVMTrainer (
ON svm_iris_input_train as InputTable PARTITION BY 1
USING
ModelTable ('svm_iris_model')
IDColumn('id')
AttributeColumn('attribute')
LabelColumn ('species')
Valuecolumn('sample_2')
MaxStep (2)
Seed ('1')
) as dt1;
このSELECT文は、old_var1とvar2の値を指定します。
SELECT * FROM user_SparseSVMTrainer (
ON svm_iris_input_train as InputTable PARTITION BY 1
USING
ModelTable ('svm_iris_model')
LabelColumn ('species')
IDColumn('id')
AttributeColumn('attribute')
Seed ('1')
old_var1 (2)
var2('sample')
) as dt1;
クエリーは次のように書き換えられます。関数マッピング定義に従って、var1は値2を使用してold_var1の代わりに使用されます。ValueColumn連結式はsample_2に解決されます。MaxStepは、値2でvar1の代わりに使用されます。
SELECT * FROM user_SparseSVMTrainer (
ON svm_iris_input_train as InputTable PARTITION BY 1
USING
ModelTable ('svm_iris_model')
LabelColumn ('species')
IDColumn('id')
AttributeColumn('attribute')
Valuecolumn('sample_2')
MaxStep (2)
Seed ('1')
) as dt1;