OVH Cloud OVH Cloud

Select : convertir int en vchar JUSTIFIE à droite !

2 réponses
Avatar
ThierryM
Bjr,
Je voudrais dans un select convertir des décimaux en string pour les
concaténer avec un autre champ texte, et pouvoir trier dans l'order des
valeurs décimales en premier...

Mais comme 1 sort avant 10 car la sortie de la conversion (avec cast) est
justifiée à gauche...

Savez-vous comment faire pour que ce soit jusitifié à droite, ou comment
ajouter des 0 à gauche ?

Merci !!

2 réponses

Avatar
Boss Hog
Salut, si j'ai bien compris...

il faut que tu sache la taille maximun et tu fait ceci:
DECLARE @MyFloat varchar(255)
DECLARE @MyMask varchar(255)
SET @MyFloat = '102.3'
SET @MyMask = '0000000000' --dison que le max est à 10 chiffres

Select RIGHT(@MyMask + @MyFloat, 10) as RESULT

à voir, c'est tout ce qui me vien pour l'instant
@+ Boss Hog


"ThierryM" wrote in message
news:
Bjr,
Je voudrais dans un select convertir des décimaux en string pour les
concaténer avec un autre champ texte, et pouvoir trier dans l'order des
valeurs décimales en premier...

Mais comme 1 sort avant 10 car la sortie de la conversion (avec cast) est
justifiée à gauche...

Savez-vous comment faire pour que ce soit jusitifié à droite, ou comment
ajouter des 0 à gauche ?

Merci !!


Avatar
Steve Kass
Thierry,

Si vous n'avez besoin d'ordonner les rangées que dans cette requête:

select
'abc' + str(colDecimal) as C
order by colDecimal

Steve Kass
Drew University


ThierryM wrote:

Bjr,
Je voudrais dans un select convertir des décimaux en string pour les
concaténer avec un autre champ texte, et pouvoir trier dans l'order des
valeurs décimales en premier...

Mais comme 1 sort avant 10 car la sortie de la conversion (avec cast) est
justifiée à gauche...

Savez-vous comment faire pour que ce soit jusitifié à droite, ou comment
ajouter des 0 à gauche ?

Merci !!