dslContext
.select(TUserChatMessageKewei.T_USER_CHAT_MESSAGE_KEWEI.QUESTION.as("chat_question"),
TUserChatMessageKewei.T_USER_CHAT_MESSAGE_KEWEI.CREATE_TIME.as("chat_create_time"),
StudentComment.STUDENT_COMMENT.ID.as("comment_id"),
DSL.sum(
DSL.when(Feedback.FEEDBACK.ID.isNull(), 0).otherwise(1)
).as("feedback_no")
).from(StudentComment.STUDENT_COMMENT)
.join(TUserChatMessageKewei.T_USER_CHAT_MESSAGE_KEWEI)
.on(StudentComment.STUDENT_COMMENT.CHAT_ID
.eq(TUserChatMessageKewei.T_USER_CHAT_MESSAGE_KEWEI.ID))
.leftJoin(Feedback.FEEDBACK)
.on(Feedback.FEEDBACK.COMMENT_ID.eq(StudentComment.STUDENT_COMMENT.ID))
.where(TUserChatMessageKewei.T_USER_CHAT_MESSAGE_KEWEI.CLUSTERED.eq(Boolean.TRUE)
.and(StudentComment.STUDENT_COMMENT.FEEDBACK_OVER.eq(Constants.NO)))
.groupBy(StudentComment.STUDENT_COMMENT.ID)
.fetch(f -> f.into(ChatNotOverDTO.class));
sum处对应的sql代码:sum(case when feedback.id is null then 0 else 1 end) as feedbackNo
1,2