clickhouse JDBC查询问题
//列表sql
String sqlList = " SELECT\n" +
"\t" + syncFieldMap.get("syncDateName") + " AS time,\n" +
"\ttoString(sum(charged_power)) AS chargedPower,\n" +
"\ttoString(sum(charged_time)) AS chargedTime,\n" +
"\ttoString(sum(record_num)) AS chargeTimes,\n" +
"\ttoString(sum(charged_amount)) AS electFee,\n" +
"\ttoString(sum(parked_amount)) AS serviceFee,\n" +
"\ttoString(sum(sale_amount)) AS orderTotalFee,\n" +
"\ttoString(sum(operator_yh_amount)) AS operatorPreferentFee,\n" +
"\ttoString(sum(ykc_yh_amount)) AS ykcPreferentFee,\n" +
"\ttoString(sum(operator_hd_discount_amount)) AS operatorDiscountFee,\n" +
"\ttoString(sum(ykc_hd_discount_amount)) AS ykcDiscountFee,\n" +
"\ttoString(sum(price_difference_sales_elec)) AS electSaleDifferenceFee,\n" +
"\ttoString(sum(charged_discount_amount)) AS userActualElectFee,\n" +
"\ttoString(sum(parked_discount_amount)) AS userActualServiceFee,\n" +
"\ttoString(sum(actual_pay)) AS userActualFee \n" +
"FROM\n" +
"\t " + syncFieldMap.get("syncTableName") + " t \n" +
"WHERE 1 = 1 ";
StringBuilder sbList = new StringBuilder(sqlList);
//拼接过滤条件(入参)
handlePeriodParam(requestData, sbList, syncFieldMap);
sbList.append(" GROUP BY " + syncFieldMap.get("syncDateName") + " ORDER BY " + syncFieldMap.get("syncDateName") + " DESC LIMIT " + page.getBeginIndex() + " , " + page.getPageSize());
resList = statement.executeQuery(sbList.toString());
这里的toString(),就是解决问题的重点
charged_power字段设计的时候是Decimal类型