Update a
Set staffdiscountstartdate = '20100428'
--select a.employeeid, b.employeeid
from
tblEmployees a
left join
tblCards b
on
a.employeeid=b.employeeid
where
GroupStartDate < '20100301'
and
StaffDiscountStartDate > '20100428'
and
datediff(day,groupstartdate,staffdiscountstartdate)>1
and
b.employeeid is null
and
a. staffdiscountstartdate <> '20100428'
Я добавил дополнительное условие where, которому нужно обновить значение, если оно уже там правильно. Я также показал, как использовать select как часть обновления, закомментировав часть select и список столбцов оператора в одной строке. Это поможет вам убедиться, что у вас есть правильные записи перед запуском обновления, и я думаю, что вам будет проще увидеть, как преобразовать выбранную запись в обновление.