translation - Mondrian saiku - vertica查询翻译错误

标签 translation mdx mondrian saiku

您好,尝试将 saiku 与 vertica 一起使用。

Vertica具有数据库->模式->表的概念。因此,在 xml 文件中,我给出的是 schemaName.tableName,而不是表名称

<?xml version="1.0"?>
<Schema name="Sales" metamodelVersion='3.6' quoteSql='false'>
<Cube name="Sales" defaultMeasure="sales">
<Table name="schemaName.factName"></Table>
  <Dimension name="date_mysql">
    <Hierarchy hasAll="true">
      <Level name="date" column="date" type="Date" uniqueMembers="false"/>
    </Hierarchy>
  </Dimension>
  <Measure name="sales" aggregator="sum" column="sales" formatString="#,###" />
  <Measure name="orders" aggregator="sum" column="orders" formatString="#,###" />
</Cube>
</Schema>

这似乎有效,蒙德里安能够正确地获取尺寸和尺寸。问题是生成的 SQL 查询在语法上是错误的

select "schemaName"."tableName"."date" as "c0" 
from "schemaName"."tableName" as "schemaName"."tableName" 
group by "schemaName"."tableName"."date" 
order by CASE WHEN "schemaName"."tableName"."date" IS NULL THEN 1 ELSE 0 END, "schemaName"."tableName"."date" ASC

这里有两个问题。

  • Vertica 将双引号视为任何其他字符,因此“tableName”和 tableName 是不同的。 ( quoteSql='false' 不起作用,因为我使用元模型 3.6)
  • Mondrian 似乎从指定的表名(这里是 schema.table)生成别名,这在这里出了问题。

还有其他方式来提及架构吗?如何去掉双引号?

最佳答案

表标签也带有 schema 属性。(感谢 Paul Stoellberger 指出)所以

<Table name="factName" schema="schemaName"></Table>

这可以解决方言和引用问题

http://mondrian.pentaho.com/documentation/xml_schema.php#Table

关于translation - Mondrian saiku - vertica查询翻译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21738803/

相关文章:

c++ - 动态 Qt 字符串翻译

image - 在 wordpress 表情符号翻译功能中添加更多字符串...搜索引擎友好吗?

olap - 蒙德里安:似乎无法使用聚合表

oracle - Saiku 找不到用于 oracle 连接的 JDBC 驱动程序

java - 将 Java 代码翻译为 C

localization - Tridion 2009 网站翻译蓝图

sql-server-2008 - 如何解决 MDX 错误 : "Two sets specified in the function have different dimensionality."? 的问题

MDX - icCube - 如何与其他聚合一起获得 DYNAMIC topcount/toppercent?

ssas - 如何学习 MDX

mysql - MDX 相当于 SQL 查询