gpt4 book ai didi

PostgreSQL 返回最后 n 个单词

转载 作者:行者123 更新时间:2023-11-29 14:14:04 25 4
gpt4 key购买 nike

如何使用 Postgres 返回最后 n 个单词。

我试过使用LEFT方法。

SELECT DISTINCT LEFT(name, -4) FROM my_table;

但它返回最后 4 个字符,我想返回最后 3 个单词。

最佳答案

demo:db<>fiddle

您可以使用 SUBSTRING() 函数和正则表达式来做到这一点:

SELECT 
SUBSTRING(name FROM '((\S+\s+){0,3}\S+$)')
FROM my_table

这已在此处解释:How can I match the last two words in a sentence in PostgreSQL?

\S+ 是一串非空白字符

\s+ 是一串空白字符(例如一个空格)

(\S+\s+){0,3} 由空格分隔的零到三个单词

\S+$ 文本末尾一个词。

-> 创建 4 个单词(如果没有更多的话,则更少)。

关于PostgreSQL 返回最后 n 个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55727810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com