Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL Server прехвърля varchar към int

Твърдението на Мартин Смит е отлично --> Ако там влизат само числови данни и винаги ще извършвате операции като тази, това ще ви спести време и проблеми, без да се налага да извършвате тази работа по преобразуване.

Като се има предвид това, можете да направите -

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   

където nn е оригиналната дефиниция на вашата колона varchar



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. DATEDIFF във формат ЧЧ:ММ:СС

  2. T-SQL - Псевдоним с помощта на =срещу as

  3. Грешка при промяна на типа на курсора в резултатите от функцията за добавяне на дата на Perl OLE32 MSSQL

  4. Sqlcmd за генериране на файл без пунктирана линия под заглавката, без брой редове

  5. извлича конкретен диапазон от редове в таблица на SQL Server