假设我有 ID 为 int、VALUE 字符串的表:
ID | VALUE
1 abc
2 abc
3 def
4 abc
5 abc
6 abc
如果我选择值,count(*) 按值分组,我应该得到
VALUE | COUNT
abc 5
def 1
现在棘手的部分,如果有 count == 1 我需要从第一个表中获取该 ID。我应该使用 CTE 吗?创建结果集,我将在其中添加 ID string == null 并运行 update b.ID = a.ID where count == 1 ?
或者还有其他更简单的方法吗?
编辑:
我想要这样的结果表:
ID VALUE count
null abc 5
3 def 1