Comment convertir un entier en chaîne de caractères et d'obtenir la longueur de la chaîne

Dans ma base de données il y a un champ last_id de type integer. La table contient plusieurs lignes. Disons que la valeur maximale de last_id est 104050. Maintenant, je veux savoir la longueur de cet entier.

Que ce n'est pas possible, je suis en train de le convertir en une chaîne de caractères.

SELECT to_char(MAX(last_id),'99') FROM xxxx

Je m'attends à ce pour un rendement de 10 avec type = text, mais au lieu de cela, il renvoie ## type = text.
Ensuite, je voudrais utiliser SELECT char_length(to_char(MAX(last_id),'99')) FROM xxx qui devrait revenir 2 ...

Ce qui ne va pas ici?

  • La raison en est le "mode de remplissage" de la to_char() fonction. À l'aide de to_char(last_id, 'FM99') serait probablement résoudre votre problème.
  • Pourquoi acceptez-vous de rjhdby de réponse? Le mien est plus court, mieux, plus précoce et correcte.
  • vous avez raison, j'ai corrigé cela maintenant qu'il a aidé à résoudre mon problème en premier lieu
InformationsquelleAutor coala | 2014-03-18