使用JSL将数据从ODBC提取到表中你好
JSL新手......
尝试创建包含ODBC数据的JMP数据表。我只需要在特定日期之后才能使用某些产品。
我对一个产品的当前脚本如下所示:
SELECT * FROM“LIMS”。“SAMPLE”WHERE LIMS.SAMPLE.DATE> = to_date('17 -01-2015','dd-mm-yyyy')AND LIMS.SAMPLE.PRODUCT ='12345ABC'
如何使用这样的脚本将多个产品(例如三个产品12345ABC,23456ACD,1234ABCD)包含在我的表中?
最好,
中号
Re:使用JSL将数据从ODBC提取到表中你好MBL,
我鼓励您在JMP中使用查询生成器。 获得Query所需的结果后,生成表,然后将源脚本复制/粘贴到结果中并将其放入JSL中。这将使整个过程更容易。
如果你想继续下面的SQL,我相信你会做类似的事情:
SELECT * FROM“LIMS”。“SAMPLE”,其中LIMS.SAMPLE.DATE> = to_date('17 -01-2015','dd-mm-yyyy')AND(LIMS.SAMPLE.PRODUCT IN('12345ABC',' 23456ACD','1234ABCD'))
Brian Corcoran
JMP开发
Re:使用JSL将数据从ODBC提取到表中这是生成SQL的一种方法。 诀窍是使用Concat Items函数来创建IN列表。 我也在使用evalinsert和\ [...] \以便我可以干净地在字符串中包含双引号。
prod_list = {"12345ABC", "23456ACD", "1234ABCD"};
in_list = "('" || Concat Items(prod_list, "','") || "')";
sql = evalinsert(
"\[SELECT * FROM "LIMS"."SAMPLE"
WHERE LIMS.SAMPLE.DATE >= to_date('17-01-2015', 'dd-mm-yyyy')
AND (LIMS.SAMPLE.PRODUCT IN ^in_list^)]\");
show(in_list, sql);
结果在日志窗口中:
in_list = "('12345ABC','23456ACD','1234ABCD')";
sql = "SELECT * FROM \!"LIMS\!".\!"SAMPLE\!"
WHERE LIMS.SAMPLE.DATE >= to_date('17-01-2015', 'dd-mm-yyyy')
AND (LIMS.SAMPLE.PRODUCT IN ('12345ABC','23456ACD','1234ABCD'))";