使用oracle列转行函数pivot 报错

使用oracle列转行函数pivot 报错,数据库内跑没有问题,ps,确定数据集配置没有问题的


FineReport jiangjie 发布于 2018-12-21 01:15
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共8回答
最佳回答
0
jiangjieLv1见习互助
发布于2018-12-28 11:22

使用case when的方法来解决上面需求,还是觉得是pivot公式在fr的兼容性问题。

最佳回答
0
monvzhileiLv6初级互助
发布于2018-12-21 06:18

你可以这样:实在数据集里面不行,那么你在oracle里面写成视图。  然后你引用这个视图就行了。

  • jiangjie jiangjie(提问者) 实在不行可以在sql里面用case when 来转,不过这个报错很奇怪
    2018-12-21 10:22 
最佳回答
0
myseanLv3初级互助
发布于2018-12-21 08:20

有可能选错了数据集。也有可能是帆软本身的问题。SELECt top 10  * FROM 订单 在测试数据库。一样报你这个错。

最佳回答
0
孤陌Lv6资深互助
发布于2018-12-21 08:41(编辑于 2018-12-21 08:43)

你没有选对 对应的数据库把 选择你定义的数据库连接的名称 不要选错了额

image.png

  • jiangjie jiangjie(提问者) 数据集市对的,因为把pivot后面的内容去掉,sql可以正常查询的
    2018-12-21 10:20 
最佳回答
0
kangjavaLv2见习互助
发布于2018-12-21 08:59

测试结果是在帆软oracle连接数据集支持pivot。

image.pngimage.png

最佳回答
0
No1-王子阳Lv5中级互助
发布于2018-12-21 09:12

不是报错  是你选错了数据库连接   我这oracle用没有问题的。

最佳回答
0
用户7wfP42635042Lv4见习互助
发布于2021-8-4 14:53

请问楼主解决问题了吗,我这边也遇到同样的问题

最佳回答
0
用户j2990017Lv2见习互助
发布于2024-3-21 16:55

最近遇到这个问题,测试了评论区老哥的成功模板后发现了这个问题

oracle会截断过长的pivot中定义的列名,如以下sql:

image.png

fr10 (11未尝试)build版本 10.0.13(Build#persist-2021.01.25.11.03.31.957)中,

pivot中的值如果存在这种情况,就会报题主所示的Quary:Error错误

image.png

尝试将pivot中的名称重命名为较短的值就可以正常查询了

image.png

  • 7关注人数
  • 894浏览人数
  • 最后回答于:2024-3-21 16:55
    请选择关闭问题的原因
    确定 取消
    返回顶部