案例:
SELECT DISTINCT
tpi.`standard_catalog_code`,
tpi.`groups` groups
FROM
plan_info tpi
WHERE tpi.`standard_catalog_code` = '040101'
查询结果:
拆分语句:
SELECT DISTINCT
tpi.`standard_catalog_code`,
SUBSTRING_INDEX(
SUBSTRING_INDEX(
tpi.`groups`,
',',
b.help_topic_id + 1
),
',',
- 1
) AS groups
FROM
td_plan_info tpi
JOIN mysql.help_topic b
ON b.help_topic_id < (
LENGTH(tpi.`groups`) - LENGTH(REPLACE(tpi.`groups`, ',', '')) + 1
)
WHERE tpi.`standard_catalog_code` = '040101'
分析:
使用mysql自带的临时表mysql.help_topic做中间临时表