Comment convertir un entier en chaîne dans le cadre d'une requête PostgreSQL?
Ainsi, par exemple, j'ai besoin de:
SELECT * FROM table WHERE <some integer> = 'string of numbers'
où <some integer>
peut être compris entre 1 et 15 chiffres.
Étant donné que le nombre peut comporter jusqu'à 15 chiffres, vous pourrez convertir un nombre entier de 64 bits (8 octets). Essaye ça:
SELECT * FROM table
WHERE myint = mytext::int8
L'opérateur de conversion ::
est historique mais pratique. Postgres est également conforme à la syntaxe standard SQL
myint = cast ( mytext as int8)
Si vous voulez comparer un texte littéral avec un int
, convertissez-le int
en texte:
SELECT * FROM table
WHERE myint::varchar(255) = mytext
Vous pouvez convertir un entier en chaîne de cette façon
intval::text
et ainsi dans votre cas
SELECT * FROM table WHERE <some integer>::text = 'string of numbers'
Vous pourriez faire ceci:
SELECT * FROM table WHERE cast(YOUR_INTEGER_VALUE as varchar) = 'string of numbers'