From 06ce7d6d1eaca03f572e81894aeb21165e177330 Mon Sep 17 00:00:00 2001 From: junjun Date: Mon, 3 Jun 2024 11:25:58 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E4=BB=AA=E8=A1=A8=E6=9D=BF):=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E8=BF=87=E6=BB=A4=E7=BB=84=E4=BB=B6=E6=8E=92=E5=BA=8F?= =?UTF-8?q?=E6=8A=A5=E9=94=99=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/io/dataease/dataset/manage/DatasetDataManage.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/core-backend/src/main/java/io/dataease/dataset/manage/DatasetDataManage.java b/core/core-backend/src/main/java/io/dataease/dataset/manage/DatasetDataManage.java index 69a6d971c8..d70a50a101 100644 --- a/core/core-backend/src/main/java/io/dataease/dataset/manage/DatasetDataManage.java +++ b/core/core-backend/src/main/java/io/dataease/dataset/manage/DatasetDataManage.java @@ -674,6 +674,7 @@ public class DatasetDataManage { } // 排序 + boolean sortDistinct = true; if (ObjectUtils.isNotEmpty(request.getSortId())) { DatasetTableFieldDTO field = datasetTableFieldManage.selectById(request.getSortId()); if (field == null) { @@ -683,13 +684,14 @@ public class DatasetDataManage { BeanUtils.copyBean(deSortField, field); deSortField.setOrderDirection(request.getSort()); datasetGroupInfoDTO.setSortFields(Collections.singletonList(deSortField)); + sortDistinct = false; } Field2SQLObj.field2sqlObj(sqlMeta, fields, datasetGroupInfoDTO.getAllFields(), crossDs, dsMap); ExtWhere2Str.extWhere2sqlOjb(sqlMeta, extFilterList, datasetGroupInfoDTO.getAllFields(), crossDs, dsMap); WhereTree2Str.transFilterTrees(sqlMeta, rowPermissionsTree, fields, crossDs, dsMap); Order2SQLObj.getOrders(sqlMeta, fields, datasetGroupInfoDTO.getSortFields(), crossDs, dsMap); - String querySQL = SQLProvider.createQuerySQLWithLimit(sqlMeta, ids.size() == 1, needOrder, ids.size() == 1, 0, 1000); + String querySQL = SQLProvider.createQuerySQLWithLimit(sqlMeta, false, needOrder, sortDistinct && ids.size() == 1, 0, 1000); querySQL = SqlUtils.rebuildSQL(querySQL, sqlMeta, crossDs, dsMap); logger.info("calcite data enum sql: " + querySQL);