PageHelper+mybatis+阿里云,count(0)报错

渺万里层云 2017-03-02 06:01:09
最近用了springboot+mybatis+阿里云,分页用了插件PageHelper,但出现一个问题
PageHelper.startPage((int pageNum, int pageSize) {
return startPage(pageNum, pageSize, true);
}

代码里设置:PageHelper.startPage(page.getPageNum(), page.getPageSize());

page.getPageNum()初始值=1,page.getPageSize()初始值=10。
执行如下查询:
orderList = cyOrderInfoService.queryCyOrderInfoList(cyOrder);
错误:SELECT count(0) FROM (SELECT DISTINCT info.order_id orderId, info.user_id userId FROM newcyerp_cy_order_info info WHERE info.order_id = ?) table_count
改成count(1)就没问题:SELECT count(0) FROM (SELECT DISTINCT info.order_id orderId, info.user_id userId FROM newcyerp_cy_order_info info WHERE info.order_id = ?) table_count
这可可能哪里出了问题呢?
报错console输出:
DEBUG [2017-03-02 17:47:02,470][][192.168.29.57] org.apache.ibatis.logging.jdbc.BaseJdbcLogger:145 - ==> Preparing: SELECT count(0) FROM (SELECT DISTINCT info.order_id orderId, info.user_id userId FROM newcyerp_cy_order_info info WHERE info.order_id = ?) table_count
DEBUG [2017-03-02 17:47:02,471][][192.168.29.57] org.apache.ibatis.logging.jdbc.BaseJdbcLogger:145 - ==> Parameters: 160105099907520(String)
INFO [2017-03-02 17:47:02,519][][192.168.29.57] com.xebest.web.controller.base.GlobalExceptionHandler:51 - 运行异常:
org.springframework.jdbc.UncategorizedSQLException:
### Error querying database. Cause: java.sql.SQLException: Query error: [USER ERROR] Unsupported query syntax.. Error stack: Invalid aggregate typeCOUNT(0)com.taobao.garuda.network.exception.QueryException: Invalid aggregate typeCOUNT(0)
at com.taobao.garuda.localnode.base.net.Server$2.handleQuery(Server.java:100)
at com.taobao.garuda.network.service.LNService$2.handleLocalQueryEvent(LNService.java:42)
at com.taobao.garuda.network.local.TaskHandler$SplitEventListener.handleEvent(TaskHandler.java:122)
at com.taobao.garuda.network.local.TaskHandler$SplitEventListener.handleEvent(TaskHandler.java:114)
at com.taobao.garuda.network.eventbus.SimpleEventBus$1.run(SimpleEventBus.java:43)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:756)

### The error may exist in file [D:\workspace\xe-report\target\classes\mybatis\CyOrder-mapper.xml]
### The error may involve com.xebest.web.mapper.CyOrderInfoMapper.queryCyOrderInfoList-Inline
### The error occurred while setting parameters
### SQL: SELECT count(0) FROM (SELECT DISTINCT info.order_id orderId, info.user_id userId FROM newcyerp_cy_order_info info WHERE info.order_id = ?) table_count
### Cause: java.sql.SQLException: Query error: [USER ERROR] Unsupported query syntax.. Error stack: Invalid aggregate typeCOUNT(0)com.taobao.garuda.network.exception.QueryException: Invalid aggregate typeCOUNT(0)
at com.taobao.garuda.localnode.base.net.Server$2.handleQuery(Server.java:100)
at com.taobao.garuda.network.service.LNService$2.handleLocalQueryEvent(LNService.java:42)
at com.taobao.garuda.network.local.TaskHandler$SplitEventListener.handleEvent(TaskHandler.java:122)
at com.taobao.garuda.network.local.TaskHandler$SplitEventListener.handleEvent(TaskHandler.java:114)
at com.taobao.garuda.network.eventbus.SimpleEventBus$1.run(SimpleEventBus.java:43)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:756)

; uncategorized SQLException for SQL []; SQL state [HY000]; error code [20009]; Query error: [USER ERROR] Unsupported query syntax.. Error stack: Invalid aggregate typeCOUNT(0)com.taobao.garuda.network.exception.QueryException: Invalid aggregate typeCOUNT(0)
at com.taobao.garuda.localnode.base.net.Server$2.handleQuery(Server.java:100)
at com.taobao.garuda.network.service.LNService$2.handleLocalQueryEvent(LNService.java:42)
at com.taobao.garuda.network.local.TaskHandler$SplitEventListener.handleEvent(TaskHandler.java:122)
at com.taobao.garuda.network.local.TaskHandler$SplitEventListener.handleEvent(TaskHandler.java:114)
at com.taobao.garuda.network.eventbus.SimpleEventBus$1.run(SimpleEventBus.java:43)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:756)
; nested exception is java.sql.SQLException: Query error: [USER ERROR] Unsupported query syntax.. Error stack: Invalid aggregate typeCOUNT(0)com.taobao.garuda.network.exception.QueryException: Invalid aggregate typeCOUNT(0)

...全文
841 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_42681673 2018-09-19
  • 打赏
  • 举报
回复
PageHelper.startPage(transfer.getPage(), transfer.getPageSize())
.countColumn("1") 这里可以指定要count的列
shihunga 2017-12-31
  • 打赏
  • 举报
回复
求问楼主怎么搞定的啊
墨染青衫丶 2017-09-11
  • 打赏
  • 举报
回复
求问楼主怎么搞定的啊
渺万里层云 2017-03-03
  • 打赏
  • 举报
回复
该问题已搞定

10,606

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 其他
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧