Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak mogę wyrównać pole varchar do prawej w TSQL?

Użyj tego, aby zawsze padać z odstępami prowadzącymi do stałej długości

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

Jeśli zmienisz jeden 5 , musisz zmienić oba

Edycja:dodano RTRIM

Edycja 2:dodano miejsce na twardym dysku + inne wykrywanie niedrukowalne

Co to daje?

SELECT ASCII(RIGHT(MyChar, 1) FROM MyTable



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Używanie sp_help_schedule w SQL Server

  2. Czy można aktualizować funkcję zwracającą tabelę?

  3. Konwertuj czas dziesiętny na godziny i minuty

  4. Niezawodny sposób weryfikacji procedur składowanych T-SQL

  5. Jak liczyć miejsca dziesiętne w SQL?