我在客户表中有一个列,其中包含非常大的数字,例如7351267613862.我想用较小的值替换该值。例如,
7351267613862 => 1
7371867613863 => 2
7351267993855 => 3
如何使用SQL脚本执行此操作。
注意:此值可能会多次出现在表格中。
答案 0 :(得分:0)
取决于你想要的小数字,无论如何,row_number()应该做的伎俩
UPDATE D
SET very_tall_number = small_value
FROM
(
SELECT *, small_value = dense_rank() over (order by very_tall_number)
FROM yourtable
) as D
编辑:从row_number()更改为dense_rank()