【发布时间】:2016-06-16 03:54:37
【问题描述】:
我需要加入下面选择子字符串的 2 个结果。有什么想法吗?
BEGIN
select SUBSTRING_INDEX(SUBSTRING_INDEX(oldVal, '-', n.n), '-', -1) AS oldVal5
FROM audits oldVal
CROSS JOIN ( SELECT a.N + b.N * 10 + 1 n
FROM (SELECT 0 AS N
UNION ALL SELECT 1
UNION ALL SELECT 2
UNION ALL SELECT 3
UNION ALL SELECT 4
UNION ALL SELECT 5
UNION ALL SELECT 6
UNION ALL SELECT 7
UNION ALL SELECT 8
UNION ALL SELECT 9) a ,
(SELECT 0 AS N
UNION ALL SELECT 1
UNION ALL SELECT 2
UNION ALL SELECT 3
UNION ALL SELECT 4
UNION ALL SELECT 5
UNION ALL SELECT 6
UNION ALL SELECT 7
UNION ALL SELECT 8
UNION ALL SELECT 9) b ORDER BY n ) n
WHERE n.n <= 1 + (LENGTH(oldVal) - LENGTH(REPLACE(oldVal, '-', ''))) and
dbUser=34 and tableName='persona' and task='u';
select SUBSTRING_INDEX(SUBSTRING_INDEX(newVal, '-', n.n), '-', -1) AS newval5
FROM audits newVal
CROSS JOIN ( SELECT a.N + b.N * 10 + 1 n
FROM (SELECT 0 AS N
UNION ALL SELECT 1
UNION ALL SELECT 2
UNION ALL SELECT 3
UNION ALL SELECT 4
UNION ALL SELECT 5
UNION ALL SELECT 6
UNION ALL SELECT 7
UNION ALL SELECT 8
UNION ALL SELECT 9) a ,
(SELECT 0 AS N
UNION ALL SELECT 1
UNION ALL SELECT 2
UNION ALL SELECT 3
UNION ALL SELECT 4
UNION ALL SELECT 5
UNION ALL SELECT 6
UNION ALL SELECT 7
UNION ALL SELECT 8
UNION ALL SELECT 9) b ORDER BY n ) n
WHERE n.n <= 1 + (LENGTH(newVal) - LENGTH(REPLACE(newVal, '-', ''))) and
dbUser=34 and tableName='persona' and task='u';
END
【问题讨论】:
标签: mysql select join substring