Est-il une base de données MySQL équivalent de sprintf?
J'ai un champ INT dans ma table, j'aimerais sélectionnez l'une des zéros de la chaîne. Ainsi, par exemple, 8 sortirait comme 008
, 23 023
et ainsi de suite. Est-ce possible dans une requête MySQL?
OriginalL'auteur DisgruntledGoat | 2011-01-04
Vous devez vous connecter pour publier un commentaire.
Vous êtes à la recherche pour le
LPAD
fonction:Edit:
Comme l'a souligné @Brad dans les commentaires, vous pouvez également définir la colonne avec zerofill ne:
Ce serait toujours produire au moins 3 chiffres (Il serait zéro de la tablette nombres inférieurs à 3 chiffres, et pas d'effet sur ceux qui le sont plus). C'est utile si on a toujours besoin de numéros pour sortir comme ça (Et pas seulement dans une seule requête)...
OriginalL'auteur ircmaxell
Si vous voulez atteindre un nombre minimum de rembourrage, sans couper les résultats du plus grand nombre, vous aurez besoin d'utiliser un
IF
déclaration.L'exemple ci-dessous assurez-vous que tous les codes ont un minimum de trois chiffres, tout en laissant la plus grande Id encore passer à travers non rogné.
OriginalL'auteur jaywilliams
Selon la version de mySql que vous avez, vous pouvez définir un UDF qui serait le format de la valeur pour vous. voir http://dev.mysql.com/doc/refman/5.1/en/adding-functions.html.
OriginalL'auteur John K.