我有要求。
有三个表,有些表中以后的数据需要合并,应将其提供给用户以进行审核。
是否有一种生成每个表唯一的序列号的方法,以使序列号不会重叠。
例如:表A可以包含1到100000之间的数字表B可以包含200000至300000的数字表C的数字应从300000到400000
我认为可以通过标识列选项(例如起始值和最大值)来完成。如果我选择身份,则生成的序列将不受我的控制,它将由Oracle随机选择。
有任何方法可以通过row_number函数轻松完成吗?
您可以直接使用row_number()函数从1中生成数字:
row_number() Over(Order by field_name)
如果要自定义计数的起始位置,可以将其添加到行号中。例如,如果要从1001开始:
1000 + row_number() Over(Order by field_name)
希望这会有所帮助。