Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como posso alinhar um campo varchar à direita no TSQL?


Use isso para sempre preencher com espaços à esquerda para um comprimento fixo
SELECT RIGHT(
      SPACE(5) + 
      REPLACE(REPLACE(REPLACE(REPLACE(RTRIM(MyChar), CHAR(160), ''), CHAR(9), ''), CHAR(10), ''), CHAR(13), '')
    , 5) AS Justified
FROM MyTable 
ORDER BY Justified

Se você alterar um 5 , você precisa alterar ambos

Editar:adicionado RTRIM

Editar 2:espaço adicional adicionado + outra detecção não imprimível

O que isso te dá?
SELECT ASCII(RIGHT(MyChar, 1) FROM MyTable