SQLite 没有循环。我怎样才能完成循环?

SQLite has no looping. How can I accomplish looping?

我知道 QLite 没有循环。这是我想要完成的。我有一行具有值(水平): '1:2:3:4:5:6:7:8:9:10'

我想垂直显示为:
1
2
3
4
5
6
7
8
9
10

在 Oracle 中,我可以使用循环和函数 REGEXP_SUBSTR 来完成此操作。我怎样才能用 SQLite 完成这个?

这是可能的递归 common table expression:

CREATE TABLE t(x);
INSERT INTO t VALUES('1:2:3:4:5:6:7:8:9:10');

WITH RECURSIVE split(val, rest) AS (
  SELECT NULL,
         x || ':'
  FROM t
  UNION ALL
  SELECT substr(rest, 1, instr(rest, ':') - 1),
         substr(rest, instr(rest, ':') + 1)
  FROM split
  WHERE rest != ''
)
SELECT val
FROM split
WHERE val IS NOT NULL;
1
2
3
4
5
6
7
8
9
10