2016-12-22 1 views
1

J'essaie de générer une série contenant à la fois le préfixe ('A') et les premiers zéros.Générer une série avec le préfixe et les zéros en tête (postgresql)

SELECT * FROM generate_series(8,12) 

va générer une série

8 
9 
10 
11 
12 

Mais je veux préfixe et définir un maximum de 4 zéros principaux

A00008 
A00009 
A00010 
A00011 
A00012 

Est-ce possible de faire avec une requête Postgresql?

TIA!

Répondre

3
SELECT 'A'||lpad(s::text,5,'0') as myval FROM generate_series(8,12) as t(s) 
3

Vous pouvez utiliser to_char() pour formater le nombre:

SELECT to_char(i, 'FMA00000') as x 
FROM generate_series(8,12) as t(i) 

Pour plus de détails sur to_char() s'il vous plaît see the manual