Прошу объяснить в чем проблема. Привожу пример:
CREATE TABLE #PASS (FIO varchar(20), REYS varchar(8), DATV datetime, PSP varchar(20), GOR1 varchar(3), GOR2 varchar(3))
INSERT #PASS VALUES ('ИВАНОВ ААА','SU-118','20050801','8797123456','ВКТ','СЫВ' )
INSERT #PASS VALUES ('ИВАНОВ БББ','SU-117','20050802','8797123456','СЫВ','ВКТ' )
INSERT #PASS VALUES ('ИВАНОВ ВВВ','SU-116','20050804','8797123456','ВКТ','СЫВ' )
INSERT #PASS VALUES ('ИВАНОВ ГГГ','SU-394','20050805','8797123456','СЫВ','МОВ' )
INSERT #PASS VALUES ('ИВАНОВ ДДД','SU-393','20050806','8797123456','МОВ','СЫВ' )
INSERT #PASS VALUES ('ИВАНОВ ЕЕЕ','SU-380','20050807','8797123456','СЫВ','МОВ' )
CREATE TABLE #PASS1 (FIO varchar(20), REYS varchar(8), DATV datetime, PSP varchar(20), GOR1 varchar(3), GOR2 varchar(3))
INSERT #PASS VALUES ('ИВАНОВ ААА','SU-118','20050801','8797123456','ВКТ','СЫВ' )
INSERT #PASS VALUES ('ИВАНОВ ЗЗЗ','SU-118','20050801','8797123456','ВКТ','СЫВ' )
INSERT #PASS VALUES ('ИВАНОВ ИИИ','SU-118','20050801','8797123456','ВКТ','СЫВ' )
INSERT #PASS VALUES ('ИВАНОВ ККК','SU-118','20050801','8797123456','ВКТ','СЫВ' )
INSERT #PASS VALUES ('ИВАНОВ ЛЛЛ','SU-118','20050801','8797123456','ВКТ','СЫВ' )
INSERT #PASS VALUES ('ИВАНОВ МММ','SU-118','20050801','8797123456','ВКТ','СЫВ' )
update #PASS set #PASS.FIO = #PASS1.FIO, #PASS.REYS = #PASS1.REYS, #PASS.DATV = #PASS1.DATV, #PASS.PSP = #PASS1.PSP, #PASS.GOR1 = #PASS1.GOR1, #PASS.GOR2 = #PASS1.GOR2 from #PASS1
where #PASS.REYS = #PASS1.REYS AND #PASS.DATV = #PASS1.DATV
select * from #PASS
drop table #pass
drop table #pass1
Почему update работает как insert? Я так понимаю, результатом должно стать 11 записей, а у меня практически выходит 12. 'ИВАНОВ ААА' выходит дважды. Почему?