You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在DB Browser(SQLite)中提取路径中的指定格式字符串?

解决方案

要提取路径中\\xxxxxxx04\\xxx或\\yyyy03\\yyyyyyy这类包含服务器名和共享名的前缀,在SQLite中可以通过嵌套使用INSTR函数定位到对应反斜杠位置,再截取目标片段。

方法一:直接嵌套函数

SELECT 
    path,
    SUBSTR(
        path,
        1,
        -- 定位第四个反斜杠的位置,截取到它之前的内容
        INSTR(path, '\', INSTR(path, '\', INSTR(path, '\', INSTR(path, '\') + 1) + 1) + 1) - 1
    ) AS target_prefix
FROM results;

方法二:用WITH子句分步计算(可读性更高)

如果觉得嵌套函数可读性差,可通过WITH子句先分步计算每个反斜杠的位置,再完成截取:

WITH path_parts AS (
    SELECT 
        path,
        INSTR(path, '\') AS first_slash,
        INSTR(path, '\', INSTR(path, '\') + 1) AS second_slash,
        INSTR(path, '\', INSTR(path, '\', INSTR(path, '\') + 1) + 1) AS third_slash,
        INSTR(path, '\', INSTR(path, '\', INSTR(path, '\', INSTR(path, '\') + 1) + 1) + 1) AS fourth_slash
    FROM results
)
SELECT 
    path,
    SUBSTR(path, 1, fourth_slash - 1) AS target_prefix
FROM path_parts;

说明

SQLite的INSTR(str, substr, start)支持指定起始位置搜索子串,通过依次定位第1到第4个反斜杠的位置,就能精准截取到包含\\服务器名\\共享名的完整前缀部分。

内容的提问来源于stack exchange,提问作者Zuhairi Tusiman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 13:34:50