我正在使用Microstrategy,我知道自由格式SQL报告功能。但是,我想改变Microstrategy如何生成SQL。
由于我使用的是Infobright,我想使用子选择而不是完全连接等。例如:
Microstrategy生成的查询: 选择b.colb, 分钟(b.cold), 总和(a.colb) 来自tablea a 加入tableb b 在a.id = b.id上 b.colb小组
我希望它能够生成以下方式: 选择b.colb, 分钟(b.cold), 总和(a.colb) from(选择id,sum(cold)from tablea a group by colb) 加入tableb b 在a.id = b.id上 b.colb小组
是否有可能修改生成器以采用这种方法而不是当前的方法?或者,我必须使用自由格式生成器吗?
答案 0 :(得分:2)
在报告中 - >转到VLDB属性 - >子查询类型 - >选择第6个选项 - >其中col 1(选择s1.col1 ..)回退到存在(选择col1,col2。 ..)用于多列IN
答案 1 :(得分:1)
您可以通过更改VLDB属性(在报告级别或数据库实例级别)来更改MSTR生成SQL的方式。
在VLDB设置上,我认为您应该在Tables文件夹中的“Intermediate Table Type”中查找“Derived Table”选项,但是看一下Tables文件夹中的其他选项以及Query优化文件夹。