Très simplement dans SQL Server T-SQL Parlance, comment convertissez-vous le numéro 9 à la chaîne N'00009 '? P>
3 Réponses :
Vous pouvez essayer le résultat sera une chaîne, pas un type de numéro. p> p>
Je ne suis pas sûr, cela fonctionne-t-il si le numéro est 143 code>? Serait 00143 code> être retourné ou 00000143 code>? @Jordan: Google-recherche de "Fonction de rembourrage SQL Server" pour voir les implémentations de LPAD code> et RPAD code>. Semble l'utilisation habituellement répliquer code> et len code>.
@Frustrated - non, cela ne prend que les 5 caractères les plus à droite après la concaténation.
@FrustratedwithFormsDesigner, oui, il fonctionnera pour 143 et n'importe quel nombre jusqu'à 99999. J'ai choisi la présentation à 5 chiffres car j'ai vu ce format dans la question. Le réplicat et Len fonctionnera également.
Ouais. Travaux. Brillant. C'est tout.
Vous pouvez utiliser ceci:
SELECT REPLICATE('0',5-LEN('9'))+'9'
Quelque chose de plus comme ça fonctionnerait mieux: Sélectionnez Répliquer ('0', 5-Len (Cast (Nombre sous Nvarchar))) + Cast (Nombre sous Nvarchar) Code>
Si vous êtes sur SQL Server 2012 ou version ultérieure, vous pouvez également utiliser Format Fonction:
SELECT FORMAT(1, '00000') AS PaddedNumber
Typiquement, vous laisseriez votre assurance-emploi faire ce travail ...
Typiquement, je laisserais mon niveau moyen faire ce travail, pas mon UI, mais dans ce cas, cela ne fonctionnerait pas, c'est pourquoi je pose la question.