Como converto um inteiro para string como parte de uma consulta PostgreSQL?

Como converto um inteiro para string como parte de uma consulta PostgreSQL?

Então, por exemplo, preciso de:
SELECT * FROM table WHERE <some integer> = 'string of numbers'

Onde <some integer> pode ter entre 1 e 15 dígitos de comprimento.

Author: Eric Leschinski, 2012-12-11

3 answers

Como o número pode ser de até 15 dígitos, você vai medi-lo para um número inteiro de 64 bits (8 bytes). Tenta isto.

SELECT * FROM table
WHERE myint = mytext::int8

O operador do elenco é histórico, mas conveniente. Postgres também está de acordo com a sintaxe padrão SQL

myint = cast ( mytext as int8)
 66
Author: Bohemian, 2012-12-10 21:39:41

Você pode lançar um inteiro para uma cadeia desta forma

intval::text

E assim no seu caso

SELECT * FROM table WHERE <some integer>::text = 'string of numbers'
 62
Author: Brugolo, 2016-02-10 10:53:36

Podes fazer isto:

Seleccione * da tabela onde o elenco (o SEU_ INTEGER_ value como varchar) = 'string of numbers'

 1
Author: djgupta, 2018-08-09 14:35:56