Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL Server wandelt varchar in int um

Martin Smiths Argument ist ausgezeichnet --> Wenn es nur numerische Daten sind, die dort hineingehen und Sie immer Operationen wie diese durchführen werden, wird es Ihnen Zeit und Mühe ersparen, diese Konvertierungsarbeit nicht durchführen zu müssen.

Davon abgesehen können Sie -

update Fields  
set ColumnName = cast( (cast(ColumnName as int) - 1) as varchar(nn))
from Fields f, FTypes ft
where ft.Name = 'Field Count'
    and ft.ID = f.ID_FT
    and f.ID_Project = 186   

wobei nn die ursprüngliche Definition Ihrer varchar-Spalte ist