2016-03-17 7 views
0

У меня есть таблица (Pump_Table) с потоком насоса (Pump_Flow), названия насосной станции (имя) и имя поднабора (Sub_Name), как представлено в выдержке таблицы ниже:Обновить записи по другим записям в той же таблице

enter image description here

Я хотел бы передать значение pump_flow от sub_name насоса 1 в pump_flow поле для sub_name; Насос 2, Насос 3, ... Насос n, насосной станции с таким же названием.

Сценарий я создал выглядит следующим образом:

Update [Pump_Table] 
    SET [Pump_Flow] = (
         SELECT [Pump_Flow] 
         FROM [Pump_Table] 
         WHERE [Name] = [Name] 
         AND [Sub_Name] = "Pump 1" 
        ) 
    WHERE [Name] = [Name] 
    AND [Sub_Name] != "Pump 1" 
    ; 

Он держит на возвращение значения из pump_flow поля первой записи в таблице, которая имеет «Насос 1» в поле sub_name.

ответ

0

Фильтр Name = Name всегда соответствует.

Чтобы ссылаться на значение в другой таблице, вы должны использовать имя таблицы. Если эта другая таблица является экземпляром одной и той же таблицы, вы должны переименовать одну таблицу: