Pentaho水壶:下面的删除似乎不适用于SQL脚本

时间:2013-06-29 08:30:04

标签: pentaho

我试过在Pentaho Job中通过SQL脚本执行下面的删除,我得到错误 MULTI DELETE中的未知表'a'。有人可以对此有所了解。还有别的办法吗? 绕过这个?

DELETE a.*  FROM pm_report.PM_CONCERTS_GQV_REPORT_TEST a
WHERE EXISTS
(SELECT 1 FROM pm_report.PM_CONCERTS_GQV_REPORT_TEST_3 b WHERE b.TM_EVENT_ID=a.TM_EVENT_ID
GROUP BY b.TM_EVENT_ID)

2 个答案:

答案 0 :(得分:0)

这是mysql吧?

查看类似解决方案here - 建议删除表别名。

值得注意的是,这与Pentaho无关,如果你在SQL客户端中做到这一点,你会得到同样的错误。如果你不这样做,那么差异可能在jdbc驱动程序版本中 - 可能值得检查。

答案 1 :(得分:-1)

我可以建议这些选项:

  1. 不要使用别名
  2. 直接在你的mysql上试一试,看看它是否适合你。
  3. 不要像这样使用pentaho:进行转换并将查询拆分为步骤 使用表输入和查找然后按row_id删除行 它有点长,但更难以置信且易于维护。 "不要过度优化"