我正在尝试从SQLite中的nvarchar(55)列中的所有值中删除小数位(使用Aqua Data Studio)。所有的字段都有一个.0,我试图删除,而没有舍入任何其他数字。
示例:123456.0 期望:123456
我已尝试过以下操作,并收到此错误:'将nvarchar值'8514838.0'转换为数据类型int时转换失败。'
SELECT cast(column as int) from data
是否有其他方法只删除尾随小数而不进行舍入?
答案 0 :(得分:0)
UPDATE
tableName
SET
column = SUBSTRING( column, 1, LEN( column ) - 2 )
WHERE
column LIKE '%.0'
在SQL Server中,字符串索引是从1开始的,因此SUBSTRING( s, 1, n )
从一开始就返回字符串的所有n
个字符。