Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Devo rimuovere gli zeri iniziali dopo un punto decimale

Se il formato è fisso, cioè YYYY.NNNNNNNNN , potresti semplicemente ottenere gli ultimi 9 caratteri, convertirli in int , riconvertire il risultato in varchar e riconcatena ai primi 5 caratteri:

LEFT([Year.Docid], 5) + CAST(CAST(RIGHT([Year.Docid], 9) AS int) AS varchar(10))

Tuttavia, avrebbe più senso memorizzare Year e Docid come due int separati colonne, in entrambe le tabelle. È molto più semplice assemblarli solo per l'output piuttosto che eseguire questa elaborazione ogni volta e unisciti ai risultati di esso.