【问题标题】:Index of substring in SQLite3?SQLite3中子字符串的索引?
【发布时间】:2010-07-06 17:47:04
【问题描述】:

在 varchar 列中确定子字符串索引的最直接方法是什么? charindex 不存在于 SQLite3 的库存版本中——这对我来说还是有点令人惊讶。

具体来说,我有一列包含010000011000010110 等值。我想找到11 第一次出现的索引。对于我给出的示例,我希望得到类似 NULL(或 -1)、13 的内容。

我有一个使用lengthltrim 的组合想法,但对于我需要多次执行的事情来说,这似乎需要做很多工作。

【问题讨论】:

    标签: string sqlite substring


    【解决方案1】:

    现在可以使用内置的instr 函数。

    sqlite> select instr(010000,11);
    0
    sqlite> select instr(011000,11);
    1
    sqlite> select instr(010110,11);
    3
    

    【讨论】:

    • sqlite 3.7.6 及以下不包含此功能 :(
    【解决方案2】:

    不幸的是,我认为您找到了目前唯一有效的答案。 SQLite 没有 charindex 等效函数。您可以自己制作长度和修剪,但没有内置任何内容:(

    【讨论】:

    • 这太奇怪了......即使只是语法糖(但内置)的东西也可以。我想知道 not 包括 charindex 之类的理由是什么......
    猜你喜欢
    • 2010-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-03
    • 1970-01-01
    • 2021-02-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多