点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
社区
我们使用的是Business Objects 4.2 SP4,并使用UNX Universe。
在构建查询时使用RANK功能时,它将直接在RANK函数之前生成与此类似的语法。
FieldA +'\'+ FieldB(FieldA和FieldB是RANK函数中使用的字段)。 这段代码很好,可以正常工作,但是我们正在尝试使其在Hadoop平台上工作。 我可以将串联语法切换为||,这不是问题,但是'\'是不能在Hadoop的串联中使用的字符。 有什么地方可以更改此处使用的字符? 请注意,这不是UNX中定义的任何语法,在使用RANK时,它似乎已经融入了SQL生成。
感谢您的帮助。
您尝试过使用'\\'
能否给我们提供生成的SQL的屏幕截图
Ayman,
'\\'可以工作,但是问题是我找不到在任何地方使用unx PRM文件或实际上在任何地方更改该语法的地方。 似乎它可能已经包含在SQL引擎中,而不是可以修改的东西。 用户可以执行自定义SQL并编辑该部分,但是我们通常不为最终用户启用它。
基本上我正在寻找要么确认这是SQL引擎的一部分并且无法更改,要么指向正确的方向进行更改。
报告中生成的代码的一小段。 RANK的语法正确,但是只要使用RANK,就会添加绿色突出显示的部分。 它会将其划分为一个维度,因此它既无害,也没有必要。 不过那没什么大不了的。
问题在于它正在使用'\'串联以拆分两个字段。 在Hive/Hadoop以外的任何环境下都可以正常工作,但是在这种环境下," \"是无法连接的保留字符。
请注意,我已经使用oracle和ms sql测试了它,并且行为是相同的。 在那些环境中这没有问题,因为就连接而言,'\'不是保留字符。
一周热门 更多>