我继承了一个使用 SQL Server 200x 的项目,其中存储在问题域中始终被视为百分比的值的列存储为其大于 1 的十进制等效值。例如,70%(0.7,字面意思)存储为70,100%存储为100等。除了需要记住 * 0.01 检索值和 * 100 持久值之前,这似乎不是问题在其本身。虽然它确实让我的头爆炸......所以我错过了它有充分的理由吗?考虑到已经编写了大量代码来处理伪百分比,是否有令人信服的理由来修复它?
在少数情况下会发生大于 100% 的情况,但我不明白为什么在这些情况下该值不会仅存储为 1.05。
编辑:头部感觉更好,并且稍微聪明一些。感谢所有的见解。