有表 student 和 course 。student中有course_ids。 现要把 course_ids 换成 course_names。

   Select s.*, (
            Select wm_concat(c.name)
            From course c
            Where c.id in (
                    SELECT REGEXP_SUBSTR(s.course_ids, '[^,]+', 1, LEVEL, 'i') AS d_ids  
                    FROM DUAL  
                    CONNECT BY LEVEL <= LENGTH(s.course_ids) - LENGTH(REGEXP_REPLACE(s.course_ids, ',', ''))+1)
                    
                    )
            )
    From student s

猜你喜欢

转载自www.cnblogs.com/zjq-kjdh/p/8991128.html
今日推荐