如何限制PostgreSQL子字符串中要选择的字符数?

时间:2018-08-24 14:06:56

标签: sql postgresql

我正在尝试提取电子邮件的第一部分,位于@符号之前。

这有效:

SELECT substring(email, '(\S+)(@{1})')

但是我也想只提取前15个(或更少)字符。

我该怎么做?

SELECT substring(email, '(\S+)(@{1})', 15)

不起作用。

谢谢!

1 个答案:

答案 0 :(得分:3)

怎么样:

select left(substring(email, '^[^@]*'), 15)

或者,如果您想要一个正则表达式:

select substring(email, '^[^@]{1,15}')