表是这样的
A列 B列
————————
1
2
3
2
4
5
1
类似上面这样,得数据 ,根据A列更新B列,要求是 如果A列相同,给B列 使用sys_guid 产生一个guid。
也就是A列相同的值的行,B列也是相同的guid;
有没有什么简便方法来更新B列呢
------解决方案--------------------
语言表达能力需要加强啊,需求描述不清楚,看了好一会才明白你在说啥。
严谨的方法,一条sql是解决不了了,只能用存储过程。
1.使用distinct或group by查出A列中所有不同的值
2.根据A列值,循环更新B的值为sys_guid
不严谨的方法
UPDATE TABLE SET B=sys_guid
------解决方案--------------------
A
------解决方案--------------------
merge into合不合你用?
------解决方案--------------------
我想的有点复杂:
一 用分析函数选出有两行以上的记录去重,并在后面加一列标明数值
二 第一步得出的表和源表进行关联更新,还是需要用到merger函数的。