如何在 Apache 超集中编写有效的自定义 SQL 指标?我需要编写一个指标,例如:SUM(col_name)/270



我想在 Apache 超集大数可视化类型中使用自定义 sql 度量。我想使用这样的指标:SUM(col_name(/2700000.0,但它不起作用。

我尝试了 SUM(col_name( 并且它有效。我也尝试过SUM(col_name(/COUNT(col_name(,这也有效。

我尝试使用的指标:总和(col_name(/2700000.0

我希望该指标有效,但相反,我收到错误:

ORA-00904:"col_name":标识符无效

当我单击汉堡图标并查看查询时,我可以看到:

SELECT SUM(col_name)/2700000.0
FROM
  (SELECT SUM(col_name)/2700000.0 AS "SUM(col_name)/2700000.0"
   FROM mytable
   ORDER BY SUM(col_name)/2700000.0 DESC)
WHERE ROWNUM <= 50000;

我假设这是在Oracle引擎上。SQLAlchemy 中的超集或 Oracle 方言中似乎存在一个错误,导致外部查询呈现时不带引号。通过将指标的别名更改为不带特殊字符的所有大写字母,例如 MY_SUM,查询应成功完成。

编辑:此错误已在SQLAlchemy 1.3.5中修复,并且截至2019年6月19日已对超集主分支进行了必要的更改。

似乎在使用自定义SQL指标时,您必须命名指标(例如"ABC"(。然后指标获得别名"ABC",查询工作正常:

SELECT "ABC"
FROM
  (SELECT SUM(col_name)/2700000 AS "ABC"
   FROM mytable
   ORDER BY SUM(col_name)/2700000 DESC)
WHERE ROWNUM <= 50000;

相关内容

最新更新