У меня есть таблица с именем MyTable с полями Id (INT), Name (NVARCHAR), Значение1 (бит), Value2 (бит) EX:Найти дубликаты с твист
1 Nathan True False
2 Nathan True False
3 John True False
4 John False True
Так я могу легко найти дубликаты по имени, как это:
select 'First_Id'=a.Id,'First_Value1'=a.Value1,'First_Value2'=a.Value2,
'Second_Id'=b.Id,'Second_Value1'=b.Value1,'Second_Value2'=b.Value2
from MyTable a, MyTable b where a.Id>b.Id
and a.Name = b.Name
, а затем я могу удалить те, с с Ид в SecondId ...
Что я хочу сделать, это найти дубликаты и сделать логический ИЛИ между всеми Value1 дублирующей группы и обновить каждую отдельную запись из дубликатов с этим значением, а затем то же самое для value2.
EX:
Для приведенного выше примера будет 2 группы дублей
и результат будет:
1 Nathan True False
2 Nathan True False
3 John True True
4 John True True
Как я могу это сделать?
Вы говорите, вы хотите обновить 'Value1' и' Value2' для каждой группы, так что они такие же, как в первом ряду в этой группе? – imthepitts