[ABI 5.2] sql主题表报错

5817
7

拟好 初学数据Lv2

发表于2022-6-21 13:52

悬赏5

已解决

楼主
数据源选择的是自定义主题里的sql主题,sql测试能通过,但是计算报表时报错,错误信息是URLDecoder: Illegal hex characters in escape (%) pattern - For input string: "pp"


我的查询sql是
SELECT DISTINCT(a.course_id),  IFNULL(pptNum, 0) pptNum
FROM ly_ykt_course_resource_v2 a
LEFT JOIN
        # ppt
        (SELECT course_id, COUNT(*) AS pptNum FROM ly_ykt_course_resource_v2
        WHERE resource_name LIKE "%ppt%"  #报错信息在这里
        GROUP BY course_id) d
        ON a.course_id = d.course_id

报错原因应该是%的问题,查询时sql通过url传输,因为有特殊符号导致报错,这条sql在测试里是正常的。
请问有办法解决吗?
(因为后续需要调用时间参数进行判断,所以只能使用自定义主题里的sql主题)

最佳答案
拟好 发表于 2022-6-21 14:32
我认为可能是url传输的问题,我把%改成%25后不报错了,但是sql查询就查不出结果了 ...

确实可能是因为%是转义字符,然后发生了转码错误,这个问题您可以联系项目组提BUG让研发出补丁
您也可以试下用参数指定的方式来变通
7个回答

只看楼主

颜值区总司令 数据老手Lv5

发表于2022-6-21 14:13

只看该作者

取消 关注该作者的回复

沙发

使用的什么数据库什么版本

拟好 初学数据Lv2

发表于2022-6-21 14:22

只看该作者

取消 关注该作者的回复

板凳

颜值区总司令 发表于 2022-6-21 14:13
使用的什么数据库什么版本

mysql 5.7.36

颜值区总司令 数据老手Lv5

发表于2022-6-21 14:31

只看该作者

取消 关注该作者的回复

地板

试下用参数指定可以吗

拟好 初学数据Lv2

发表于2022-6-21 14:32

只看该作者

取消 关注该作者的回复

5#

颜值区总司令 发表于 2022-6-21 14:13
使用的什么数据库什么版本

我认为可能是url传输的问题,我把%改成%25后不报错了,但是sql查询就查不出结果了

拟好 初学数据Lv2

发表于2022-6-21 14:33

只看该作者

取消 关注该作者的回复

6#

颜值区总司令 发表于 2022-6-21 14:31
试下用参数指定可以吗

如果sql中没有%是可以正常运行的

颜值区总司令 数据老手Lv5

发表于2022-6-21 13:52

只看该作者

取消 关注该作者的回复

7#

拟好 发表于 2022-6-21 14:32
我认为可能是url传输的问题,我把%改成%25后不报错了,但是sql查询就查不出结果了 ...

确实可能是因为%是转义字符,然后发生了转码错误,这个问题您可以联系项目组提BUG让研发出补丁
您也可以试下用参数指定的方式来变通

拟好 初学数据Lv2

发表于2022-6-21 14:44

只看该作者

取消 关注该作者的回复

8#

颜值区总司令 发表于 2022-6-21 14:37
确实可能是因为%是转义字符,然后发生了转码错误,这个问题您可以联系项目组提BUG让研发出补丁
您也可以 ...

好的谢谢

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号