给定一个数据库表,如何使用宏和循环来改变SELECT的多个“where”值
Somnath_Das
成员职位:31Maven
在帮助
给定一个数据库表,我如何使用宏来改变多个“哪里”值的选择查询使用rapidminer?我已经创建了一个示例过程,但WHERE子句有一个单一的条件..我要检查多种情况。
例如,如果我想检查像ACCOUNT_NO & CUSTOMER_ID,我如何使用宏和循环,使子进程将运行以下语句?
从表中选择* where account_no=suppliedValue_1 and customer_id=suppliedValue_2
<?xml版本="1.0"编码="UTF-8"?> <过程version = " 9.9.000”>
> <上下文
<输入/ >
<输出/ >
<宏/ >
> < /上下文
<过程扩展= " true " >
< /操作符>
/> .
“参数”<枚举关键= >
< /枚举>
< /操作符>
> < /过程
< /操作符>
< /操作符>
> < /过程
< /操作符>
> < /过程
0
最佳答案
-
kayman 成员职位:662独角兽同样的逻辑,但是使用“生成宏”而不是设置宏。然后逻辑定义分配给宏的值。0
答案
然后在数据库查询中使用宏语法,如%{acountnumber}
就是这样。您可以根据需要创建任意多的宏,因此您的select语句将是这样的
Select * from Table where account_no=%{acountnumber} and customer_id=%{custid}
使用准备好的查询,输入参数及其类型(在您的例子中,在此语法中是%{宏})并使用?(问号)在适当的顺序。
这样可以在许多数据库系统中获得更好的性能,并避免了SQL注入。
问候,
Balazs