以下两种方式使用wm_concat()的使用方法是等效的。
方法一:使用窗口函数,wm_concat支持窗口函数
select distinct classKey,className, classOrder, weekDayKey, lessonkey, lessonName, lessonType, wm_concat(subjectkey) over(partition by classKey,className, classOrder, weekDaykey, lessonkey, lessonName,lessonType), wm_concat(subjectName) over(partition by classKey,className, classOrder, weekDaykey, lessonkey, lessonName,lessonType) from VW_CLASSCourseTable Where schoolKey = P_SchoolKey And gradeKey = P_GradeKey And termKey = P_TermKey order by classOrder asc, weekDaykey asc, lessonType asc
方法二:使用group by方式
select classKey,className, classOrder, weekDaykey, lessonkey, lessonName, lessonType, wm_concat(subjectkey), wm_concat(subjectName) from VW_CLASSCourseTable Where schoolKey = P_SchoolKey And gradeKey = P_GradeKey And termKey = P_TermKey group by classKey,className, classOrder, weekDaykey, lessonkey, lessonName,lessonType order by classOrder asc, weekDaykey asc, lessonType asc ;