我有一个简单的问题,如何在整数上使用SUBSTRING?我目前有标记为“StoreID”的字段,其中包含一个5位整数(60008)。我在查询此信息时尝试使用SUBSTRING删除6。当我使用类似的东西时:
SUBSTRING('StoreID', 2, 6)
我收到错误,回复说SUBSTRING(integer,integer,integer)
不存在。
我可以在postgres中使用另一个函数来完成我想要做的事情吗?
答案 0 :(得分:6)
您可以转换整数
SUBSTR(cast (StoreId as text), 2,6)
答案 1 :(得分:3)
如果您对号 8
感兴趣,请使用modulo operator %
SELECT 60008%10000
如果您想要字符串 0008
,则函数right()
适合您(Postgres 9.1中引入):
SELECT right(60008::text, -1)
或使用modulo和to_char()
:
SELECT to_char(60008%10000, 'FM0000')
FM
修饰符会删除空格填充。