使用SQLite,我想按以下方式拆分字符串。
SQLite
输入字符串:
C:\Users\fidel\Desktop\Temp
并让查询返回以下 行 :
C:\ C:\Users\ C:\Users\fidel\ C:\Users\fidel\Desktop\ C:\Users\fidel\Desktop\Temp
换句话说,我想将文件路径拆分为其组成路径。有没有办法在纯SQLite中做到这一点?
这可以通过递归公用表表达式来实现:
WITH RECURSIVE split(s, last, rest) AS ( VALUES('', '', 'C:\Users\fidel\Desktop\Temp') UNION ALL SELECT s || substr(rest, 1, 1), substr(rest, 1, 1), substr(rest, 2) FROM split WHERE rest <> '' ) SELECT s FROM split WHERE rest = '' OR last = '\';
(您没有要求 合理的 方法。)