@@ -190,6 +190,7 @@ public abstract class AbstractSQLConfig<T, M extends Map<String, Object>, L exte
190
190
DATABASE_LIST .add (DATABASE_QUESTDB );
191
191
DATABASE_LIST .add (DATABASE_IOTDB );
192
192
DATABASE_LIST .add (DATABASE_SNOWFLAKE );
193
+ DATABASE_LIST .add (DATABASE_DATABEND );
193
194
DATABASE_LIST .add (DATABASE_DATABRICKS );
194
195
DATABASE_LIST .add (DATABASE_REDIS );
195
196
DATABASE_LIST .add (DATABASE_MONGODB );
@@ -1252,6 +1253,14 @@ public static boolean isSnowflake(String db) {
1252
1253
return DATABASE_SNOWFLAKE .equals (db );
1253
1254
}
1254
1255
1256
+ @ Override
1257
+ public boolean isDatabend () {
1258
+ return isDatabend (gainSQLDatabase ());
1259
+ }
1260
+ public static boolean isDatabend (String db ) {
1261
+ return DATABASE_DATABEND .equals (db );
1262
+ }
1263
+
1255
1264
@ Override
1256
1265
public boolean isDatabricks () {
1257
1266
return isDatabricks (gainSQLDatabase ());
@@ -6322,12 +6331,12 @@ LEFT JOIN ( SELECT count(*) AS count FROM sys.Comment ) AS Comment ON Comment.m
6322
6331
if (RequestMethod .isHeadMethod (method , true )) {
6323
6332
List <On > onList = join .getOnList ();
6324
6333
List <String > column = onList == null ? null : new ArrayList <>(onList .size ());
6325
- if (column != null ) {
6334
+ //解决 pg 如果只查询关联键,会报找不到column的错误
6335
+ ///* SELECT count(*) AS count FROM sys.Moment AS Moment
6336
+ // LEFT JOIN ( SELECT * FROM sys.Comment ) AS Comment ON Comment.momentId = Moment.id LIMIT 1 OFFSET 0 */
6337
+ if (column != null && joinConfig .isMSQL ()) { // 暂时这样兼容 PostgreSQL 等不支持 SELECT 中不包含对应 key 的隐式 ON 关联字段的数据库
6326
6338
for (On on : onList ) {
6327
- //解决 pg 如果只查询关联键,会报找不到column的错误
6328
- ///* SELECT count(*) AS count FROM sys.Moment AS Moment
6329
- // LEFT JOIN ( SELECT * FROM sys.Comment ) AS Comment ON Comment.momentId = Moment.id LIMIT 1 OFFSET 0 */
6330
- //column.add(on.getKey());
6339
+ column .add (on .getKey ()); // TODO PostgreSQL 等需要找到具体的 targetTable 对应 targetKey 来加到 SELECT,比直接 SELECT * 性能更好
6331
6340
}
6332
6341
}
6333
6342
0 commit comments