diff --git a/backend/src/main/java/io/dataease/provider/doris/DorisQueryProvider.java b/backend/src/main/java/io/dataease/provider/doris/DorisQueryProvider.java index 839599a566..42aaacbcea 100644 --- a/backend/src/main/java/io/dataease/provider/doris/DorisQueryProvider.java +++ b/backend/src/main/java/io/dataease/provider/doris/DorisQueryProvider.java @@ -569,10 +569,14 @@ public class DorisQueryProvider extends QueryProvider { } else if (StringUtils.containsIgnoreCase(request.getOperator(), "like")) { whereValue = "'%" + value.get(0) + "%'"; } else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) { - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); - String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); - whereValue = String.format(DorisConstants.WHERE_BETWEEN, startTime, endTime); + if (request.getDatasetTableField().getDeType() == 1) { + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); + String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); + whereValue = String.format(DorisConstants.WHERE_BETWEEN, startTime, endTime); + } else { + whereValue = String.format(MySQLConstants.WHERE_BETWEEN, value.get(0), value.get(1)); + } } else { whereValue = String.format(DorisConstants.WHERE_VALUE_VALUE, value.get(0)); } diff --git a/backend/src/main/java/io/dataease/provider/mysql/MysqlQueryProvider.java b/backend/src/main/java/io/dataease/provider/mysql/MysqlQueryProvider.java index 41d9e3ea12..98647c50eb 100644 --- a/backend/src/main/java/io/dataease/provider/mysql/MysqlQueryProvider.java +++ b/backend/src/main/java/io/dataease/provider/mysql/MysqlQueryProvider.java @@ -576,10 +576,14 @@ public class MysqlQueryProvider extends QueryProvider { } else if (StringUtils.containsIgnoreCase(request.getOperator(), "like")) { whereValue = "'%" + value.get(0) + "%'"; } else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) { - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); - String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); - whereValue = String.format(MySQLConstants.WHERE_BETWEEN, startTime, endTime); + if (request.getDatasetTableField().getDeType() == 1) { + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); + String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); + whereValue = String.format(MySQLConstants.WHERE_BETWEEN, startTime, endTime); + } else { + whereValue = String.format(MySQLConstants.WHERE_BETWEEN, value.get(0), value.get(1)); + } } else { whereValue = String.format(MySQLConstants.WHERE_VALUE_VALUE, value.get(0)); } diff --git a/backend/src/main/java/io/dataease/provider/oracle/OracleQueryProvider.java b/backend/src/main/java/io/dataease/provider/oracle/OracleQueryProvider.java index f9701a4362..9622f02c6d 100644 --- a/backend/src/main/java/io/dataease/provider/oracle/OracleQueryProvider.java +++ b/backend/src/main/java/io/dataease/provider/oracle/OracleQueryProvider.java @@ -7,6 +7,8 @@ import io.dataease.dto.chart.ChartViewFieldDTO; import io.dataease.dto.sqlObj.SQLObj; import io.dataease.provider.QueryProvider; import io.dataease.provider.SQLConstants; +import io.dataease.provider.doris.DorisConstants; +import io.dataease.provider.mysql.MySQLConstants; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; @@ -584,10 +586,14 @@ public class OracleQueryProvider extends QueryProvider { } else if (StringUtils.containsIgnoreCase(request.getOperator(), "like")) { whereValue = "'%" + value.get(0) + "%'"; } else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) { - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); - String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); - whereValue = String.format(OracleConstants.WHERE_BETWEEN, startTime, endTime); + if (request.getDatasetTableField().getDeType() == 1) { + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); + String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); + whereValue = String.format(OracleConstants.WHERE_BETWEEN, startTime, endTime); + } else { + whereValue = String.format(MySQLConstants.WHERE_BETWEEN, value.get(0), value.get(1)); + } } else { whereValue = String.format(OracleConstants.WHERE_VALUE_VALUE, value.get(0)); }