druid版本:1.2.4
错误日志:
Cause: java.sql.SQLException: sql injection violation, dbType clickhouse, , druid-version 1.2.4, syntax error: syntax error, error in :'IT ? BY a, pos 297, line 11, column 18, token BY : SELECT
a,
b,
sum(c) as c
FROM table
WHERE
timestamp BETWEEN toDateTime(?) AND toDateTime(?)
GROUP BY a, b
ORDER BY c
LIMIT ? BY a
clickhouse limit by 说明文档:https://clickhouse.tech/docs/en/sql-reference/statements/select/limit-by/
可以支持下 clickhouse 的 limit by 语法吗?
原提问者GitHub用户kkrrsq
看起来是在使用 ClickHouse 数据库中的 LIMIT BY 语句时出现了错误。这种错误通常是由于 LIMIT BY 语句的语法和参数使用问题,或者存在其他语法和语义问题导致的。
为了解决这个问题,可以考虑以下几个方面:
检查 LIMIT BY 语句的语法。在使用 ClickHouse 数据库中的 LIMIT BY 语句时,需要确保语法正确,遵循标准的 LIMIT BY 语法规范和语法要求。可以参考 ClickHouse 官方文档或者其他相关资料,了解 LIMIT BY 语句的语法和用法。
检查 LIMIT BY 语句的参数使用。在使用 LIMIT BY 语句时,需要确保正确使用参数,并且参数的类型和值符合要求。可以参考 ClickHouse 官方文档或者其他相关资料,了解 LIMIT BY 语句的参数要求和使用方式。
检查 LIMIT BY 语句的语义。在使用 LIMIT BY 语句时,需要确保语义正确,并且符合实际需求。可以使用 ClickHouse 查询工具或者其他工具来分析 LIMIT BY 语句的语义和执行计划,以确定是否存在语义错误或者性能问题。
尝试其他的 SQL 查询方式。如果 LIMIT BY 语句无法满足需求,可以尝试其他的 SQL 查询方式,例如使用 GROUP BY 语句、窗口函数等。这些语法可以更好地支持各种 SQL 操作和语义。
问题已修复,请用新版本
https://github.com/alibaba/druid/releases/tag/1.2.5
原回答者GitHub用户wenshao
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。