一、该问题的重现步骤是什么?
1. 首先在web中参照selectNoticePage写一个自定义分页查询
2. 查询中添加 order by create_time desc
二、你期待的结果是什么?实际看到的又是什么?
1、期待返回正常分页数据,实际看到的是
### SQL: SELECT COUNT(*) FROM (SELECT * FROM nems_assets_borrow_repair WHERE tenant_id = '000000' ORDER BY create_time DESC) scope WHERE scope.create_dept IN (1453322778688311299)
### Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 除非另外还指定了 TOP、OFFSET 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。
2、如果在语句中添加 top 100 percent,则生成WITH selectTemp sql语句报错
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
当前使用 bladex-boot 2.8.2 企业版 windows10操作系统
四、请提供详细的错误堆栈信息,这很重要。
org.springframework.jdbc.UncategorizedSQLException:
### Error querying database. Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 除非另外还指定了 TOP、OFFSET 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。
### The error may exist in file [E:\projects\java-project\git-project\NEMS\bladex-boot\target\classes\org\springblade\modules\nems\business\mapper\NemsAssetsBorrowRepairMapper.xml]
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT COUNT(*) FROM (SELECT * FROM nems_assets_borrow_repair WHERE tenant_id = '000000' ORDER BY create_time DESC) scope WHERE scope.create_dept IN (1453322778688311299)
### Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 除非另外还指定了 TOP、OFFSET 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。
; uncategorized SQLException; SQL state [S0001]; error code [1033]; 除非另外还指定了 TOP、OFFSET 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: 除非另外还指定了 TOP、OFFSET 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:89)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:91)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:441)
at com.sun.proxy.$Proxy143.selectList(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:173)
at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:78)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148)
at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89)
at com.sun.proxy.$Proxy235.selectBorrowRepairPage(Unknown Source)
at org.springblade.modules.nems.business.service.impl.NemsAssetsBorrowRepairServiceImpl.selectBorrowRepairPage(NemsAssetsBorrowRepairServiceImpl.java:210)
五、若有更多详细信息,请在下面提供。
扫一扫访问 Blade技术社区 移动端