From a59712e6a02634e6f1bb7751c900459dd87537b3 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Wed, 20 Oct 2021 17:44:16 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20pg=20=E6=97=B6=E9=97=B4=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E5=8C=96=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/dataease/provider/pg/PgConstants.java | 4 ++-- .../dataease/provider/pg/PgQueryProvider.java | 18 +++++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/backend/src/main/java/io/dataease/provider/pg/PgConstants.java b/backend/src/main/java/io/dataease/provider/pg/PgConstants.java index 1fcf7f0d8e..760717d5e2 100644 --- a/backend/src/main/java/io/dataease/provider/pg/PgConstants.java +++ b/backend/src/main/java/io/dataease/provider/pg/PgConstants.java @@ -15,7 +15,7 @@ public class PgConstants extends SQLConstants { public static final String UNIX_TIMESTAMP = "floor(extract(epoch from(( %s - timestamp '1970-01-01 00:00:00')*1000))) "; - public static final String DATE_FORMAT = "to_char(%s, %s)"; + public static final String DATE_FORMAT = "to_char(%s, '%s')"; public static final String FROM_UNIXTIME = "to_timestamp(%s)"; @@ -23,7 +23,7 @@ public class PgConstants extends SQLConstants { public static final String CAST = "CAST(%s AS %s)"; - public static final String DEFAULT_DATE_FORMAT = "'YYYY-MM-DD HH24:MI:SS'"; + public static final String DEFAULT_DATE_FORMAT = "YYYY-MM-DD HH24:MI:SS"; public static final String DEFAULT_INT_FORMAT = "numeric(18,0)"; diff --git a/backend/src/main/java/io/dataease/provider/pg/PgQueryProvider.java b/backend/src/main/java/io/dataease/provider/pg/PgQueryProvider.java index 307635698b..e99f5b666d 100644 --- a/backend/src/main/java/io/dataease/provider/pg/PgQueryProvider.java +++ b/backend/src/main/java/io/dataease/provider/pg/PgQueryProvider.java @@ -908,24 +908,24 @@ public class PgQueryProvider extends QueryProvider { } if (StringUtils.isEmpty(dateStyle)) { - return "'YYYY-MM-DD HH24:MI:SS'"; + return "YYYY-MM-DD HH24:MI:SS"; } switch (dateStyle) { case "y": - return "'YYYY'"; + return "YYYY"; case "y_M": - return "'YYYY" + split + "MM'"; + return "YYYY" + split + "MM"; case "y_M_d": - return "'YYYY" + split + "MM" + split + "DD'"; + return "YYYY" + split + "MM" + split + "DD"; case "H_m_s": - return "'HH24:MI:SS'"; + return "HH24:MI:SS"; case "y_M_d_H_m": - return "'YYYY" + split + "MM" + split + "DD" + " HH24:MI'"; + return "YYYY" + split + "MM" + split + "DD" + " HH24:MI"; case "y_M_d_H_m_s": - return "'YYYY" + split + "MM" + split + "DD" + " HH24:MI:SS'"; + return "YYYY" + split + "MM" + split + "DD" + " HH24:MI:SS"; default: - return "'YYYY-MM-DD HH24:MI:SS'"; + return "YYYY-MM-DD HH24:MI:SS"; } } @@ -944,7 +944,7 @@ public class PgQueryProvider extends QueryProvider { if (x.getDeType() == DeTypeConstants.DE_TIME) { String format = transDateFormat(x.getDateStyle(), x.getDatePattern()); if (x.getDeExtractType() == DeTypeConstants.DE_STRING) { - fieldName = String.format(PgConstants.DATE_FORMAT, originField, format); + fieldName = String.format(PgConstants.DATE_FORMAT, String.format(PgConstants.TO_DATE, originField, "YYYY-MM-DD HH24:MI:SS"), format); } else { String cast = String.format(PgConstants.CAST, originField, "bigint"); String from_unixtime = String.format(PgConstants.FROM_UNIXTIME, cast);