243 Star 2.7K Fork 562

MyBatis-Flex/MyBatis-Flex

QueryWrapper里面有Group条件进行分页查询时,生成的 count 子查询表没有别名,报”Every derived table must have its own alias“错误

已完成
创建于  
2023-06-12 17:08

问题描述

MySQL中,当QueryWrapper里面有Group条件进行分页查询时,生成的 count 子查询表没有别名,会报 Every derived table must have its own alias 错误

我当前使用 Mybatis-Flex 版本是?

v1.3.7 (com.mybatis-flex:mybatis-flex-spring-boot-starter:1.3.7)

错误信息是?(截图或日志)

生成的SQL

错误日志

java.lang.reflect.UndeclaredThrowableException: null
	at jdk.proxy2/jdk.proxy2.$Proxy85.paginateAs(Unknown Source) ~[na:na]
	at com.mybatisflex.core.service.IService.pageAs(IService.java:482) ~[mybatis-flex-core-1.3.7.jar:na]
	at com.mybatisflex.core.service.IService.page(IService.java:459) ~[mybatis-flex-core-1.3.7.jar:na]
...
### Cause: java.sql.SQLSyntaxErrorException: Every derived table must have its own alias
; bad SQL grammar []
...
Caused by: java.sql.SQLSyntaxErrorException: Every derived table must have its own alias
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:121) ~[mysql-connector-j-8.0.33.jar:8.0.33]
	at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-j-8.0.33.jar:8.0.33]
	at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:916) ~[mysql-connector-j-8.0.33.jar:8.0.33]
	at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354) ~[mysql-connector-j-8.0.33.jar:8.0.33]
	at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) ~[HikariCP-5.0.1.jar:na]
	at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) ~[HikariCP-5.0.1.jar:na]
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
	at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na]
	at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:58) ~[mybatis-3.5.13.jar:3.5.13]
	at jdk.proxy3/jdk.proxy3.$Proxy131.execute(Unknown Source) ~[na:na]
	at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:65) ~[mybatis-3.5.13.jar:3.5.13]
	at com.mybatisflex.core.mybatis.FlexStatementHandler.query(FlexStatementHandler.java:102) ~[mybatis-flex-core-1.3.7.jar:na]

评论 (0)

Haru 创建了任务 2年前
Haru 修改了描述 2年前
Michael Yang 通过 mybatis-flex/mybatis-flex Commit c16c99d任务状态待办的 修改为已完成 2年前
展开全部操作日志

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(1)
20327 cnscoo 1578915320
1
https://gitee.com/mybatis-flex/mybatis-flex.git
git@gitee.com:mybatis-flex/mybatis-flex.git
mybatis-flex
mybatis-flex
MyBatis-Flex

搜索帮助