【问题标题】:PostgreSQL query to find a particular pattern in a text columnPostgreSQL 查询以在文本列中查找特定模式
【发布时间】:2020-04-26 09:58:53
【问题描述】:

我的数据库表中有一个 text 列,其中包含类似的值

A/B

A/B/C

A/B/C/D

A/B/C/D/E

现在,我只想选择该列值最多包含三个 '/' 的行。 为清楚起见 - 预期输出应为:

A/B

A/B/C

A/B/C/D

谁能帮我解决这样的问题?

【问题讨论】:

  • 请分享您目前尝试的代码。

标签: postgresql postgresql-9.4 regexp-like


【解决方案1】:

我认为简单地删除其他所有内容并计算剩余字符数会更容易:

where length(regexp_replace(the_column, '[^/]', '', 'g')) <= 3

Online example

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-17
    • 1970-01-01
    • 1970-01-01
    • 2016-10-07
    • 1970-01-01
    • 1970-01-01
    • 2021-07-28
    • 1970-01-01
    相关资源
    最近更新 更多