我的某一列中有一个值为“P62519”,我尝试在该列的前三位数字后添加小数为“P62.519”,但它不起作用,该列的数据类型为 nvarchar(10 )
Update Table
Set ColumnName = REPLACE(LTRIM(SUBSTRING(Table.ColumnName,1,3)),'','.')
where LEN(Code) > 3
我尝试了这个,但是这个列 Columnname 是与我表中的另一列聚集的主键,并且不允许我这样做,说违反了约束,尽管我不确定我所做的上述操作是否正确。有人可以建议我如何在数据库中这些值的三个位置后添加小数点吗?感谢您的帮助
最佳答案
确保您的外键已指定引用触发操作ON UPDATE CASCADE
。
我认为UPDATE
应该看起来更像这样:
UPDATE TABLE
SET ColumnName = SUBSTRING ( ColumnName, 1, 3 ) + '.'
+ SUBSTRING ( ColumnName, 4, LEN ( ColumnName ) - 3 )
WHERE LEN ( ColumnName ) > 3;
关于sql - 将小数点添加到表中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9879559/