【问题标题】:How to get nth line from text column in postgres如何从postgres的文本列中获取第n行
【发布时间】:2023-03-13 19:54:01
【问题描述】:

如何创建函数

mline(值文本,行号整数)

在 Postgres 9.1+ 中,它从文本列中逐行返回。

例如,

create table test ( test text );
insert into test values ('Line 1
Line 2
Line 3');
select mline(test,2) from test;

应该返回

第 2 行

使用 Postgres 9.1

【问题讨论】:

标签: sql regex postgresql plpgsql stored-functions


【解决方案1】:

您可以使用regexp_split_to_array 和下标来获取特定元素:

create table test ( test text );
insert into test values ('Line 1
Line 2
Line 3');

SELECT (regexp_split_to_array(test, '\n'))[2] FROM test;

输出:

Line 2

db<>fiddle demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-24
    • 1970-01-01
    • 2020-08-24
    • 2011-11-08
    • 2017-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多