help_topic表,以字符拆分,一行转多行
help_topic表是数据库mysql下的一个表
SUBSTRING_INDEX(s, delimiter, number)
返回从字符串 s 的第 number 个出现的分隔符 delimiter 之后的子串。
- 如果 number 是正数,返回第 number 个字符左边的字符串。
SELECT SUBSTRING_INDEX('a*b*c*d*e','*',3); ---- a*b*c
- 如果 number 是负数,返回第(number 的绝对值(从右边数))个字符右边的字符串。
SELECT SUBSTRING_INDEX('a*b*c','*',-1); ---- c
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('a*b*c*d*e','*',3),'*',-1); ---- c
示例:
select a.id, a.username, substring_index(substring_index(a.course, '|', b.help_topic_id + 1), '|', -1) course from student a JOIN mysql.help_topic b ON b.help_topic_id < (length(a.course) - length(REPLACE(a.course, '|', '')) + 1);