从整数列获取子字符串

4

我有一个快速的问题,如何在整数上使用SUBSTRING? 我目前有一个标记为“StoreID”的字段,其中包含一个5位数(60008)的整数。我正在尝试使用SUBSTRING来在查询此信息时删除6。当我使用类似以下的内容:

SUBSTRING('StoreID', 2, 6) 返回一个错误,说SUBSTRING(integer,integer,integer)不存在。

在Postgres中是否有其他函数可用于完成我想做的事情吗?

2个回答

7

您可以将整数转换为其他数据类型

SUBSTR(cast (StoreId as text), 2,6)

5
如果你对数字8感兴趣,可以使用模运算符%
SELECT 60008%10000

如果您想获取字符串'0008',那么函数right()(自Postgres 9.1版本起添加)适合您:

SELECT right(60008::text, -1)

或者使用取模和to_char()函数:

SELECT to_char(60008%10000, 'FM0000')
< p > FM 修饰符可以去除空格填充。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接