390 Star 1.6K Fork 482

闲.大赋(李家智) / BeetlSQL

 / 详情

PageKit.getCountSql判断有没有order by有bug

已完成
创建于  
2020-07-12 16:53

输入图片说明

System.out.println(PageKit.getCountSql("select * from a order by a.id group by a.id"));
结果是
select count(1)
from
a
不应该是
select count(1)
from
a
group by
a.id 吗?

评论 (2)

alohasir 创建了任务
alohasir 关联仓库设置为闲.大赋/beetlsql
展开全部操作日志

输入图片说明

执行sql是

			SELECT 
				a.visit_log_id,
				a.openid,
				a.unionid,
				a.goods_def_id,
				a.create_time,
				b.nickname
			FROM
				visit_log a
			LEFT JOIN we_chat_user_info b ON (a.unionid = b.unionid or a.openid = b.openid)
			WHERE
				datediff(NOW(), a.create_time) <= 14
			AND a.goods_def_id = 1
			group by a.unionid
			ORDER BY
				a.create_time DESC

navicate 没有问题的。
输入图片说明

报错内容
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 654
at java.lang.String.substring(String.java:1963)
at org.beetl.sql.core.kit.PageKit.getCountSql(PageKit.java:85)
at com.manli.api.util.AliYunSmsUtil.main(AliYunSmsUtil.java:119)

执行的sql是这种的。 就报数组下标越界
SELECT
*
FROM
(
SELECT
*
FROM
(
SELECT DISTINCT
a.visit_log_id,
a.openid,
a.unionid,
a.goods_def_id,
a.create_time,
b.nickname
FROM
visit_log a
LEFT JOIN we_chat_user_info b ON a.unionid = b.unionid
WHERE
datediff(NOW(), a.create_time) <= 14
AND a.goods_def_id = 1
ORDER BY
a.create_time DESC
) main
GROUP BY
main.unionid
) c

闲.大赋(李家智) 任务状态待办的 修改为已完成

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(1)
1468442 alohasir 1589422604
Java
1
https://gitee.com/xiandafu/beetlsql.git
git@gitee.com:xiandafu/beetlsql.git
xiandafu
beetlsql
BeetlSQL

搜索帮助